ios - iOS 仅获取具有电子邮件地址的联系人
问题描述
我找不到 Apple 对 Contacts 框架的正确引用,所以我正在努力解决这个问题,我需要用至少有一个电子邮件地址的联系人填充 TableView,ContactsPickerController 不是解决方案,我需要填充 tableview就在viewDidLoad()
. 任何人都可以为我的问题提供解决方案。
解决方案
可以这样联系:
参考-> https://stackoverflow.com/a/37388443/7512091
var contacts = [CNContact]()
let keys = [CNContactFormatter.descriptorForRequiredKeysForStyle(.FullName)]
let request = CNContactFetchRequest(keysToFetch: keys)
do {
try self.contactStore.enumerateContactsWithFetchRequest(request) {
(contact, stop) in
// Array containing all unified contacts from everywhere
contacts.append(contact)
}
}
catch {
print("unable to fetch contacts")
}
该contact
对象的类型是CNContact
,并且它有一个emailAddresses
属性,该属性是联系人的标记电子邮件地址数组。
苹果参考: -> https://developer.apple.com/documentation/contacts/cncontact?language=objc
推荐阅读
- swift - 如何安全地解开函数中使用的实例变量?迅速
- c# - 当应用程序在 Xamarin WebView 中启动时,键盘会自动显示
- python - reFromat JSON 与 python 提取嵌套字典
- python - 在 Python 中获取字符串中的表情符号计数
- php - laravel 自定义包开发中中间件的使用
- r - 当我在ggplot2中使用汉字时从rmarkdown生成的奇怪符号
- slack - How to predefine a message and send it in Slack chat?
- reactjs - 如何颠倒将项目添加到 final-form/react-final-form-arrays 中的字段的顺序,所以最近的是第一个
- android - Flutter Android build无法确定任务':app:compileDebugJavaWithJavac'的依赖关系Google Play服务错误
- rest - 2captcha 标志 ERROR_WRONG_GOOGLEKEY 但我提供了一个。这实际上是 ERROR_GOOGLEKEY 吗?