Tom*_*y K 0 swift cncontact cncontactstore swift3
我发现的大部分内容都是使用AddressBook而不是新的Contacts.我正在尝试将所有用户联系人的姓名和电话号码显示在应用程序的tableview中.然后将所有这些数字带入一个API,该API交叉引用是否已经有任何帐户,因此我可以在那些旁边显示"添加朋友"按钮.是否有一种快速简便的方法来请求权限然后使用Swift3将所有联系人放入一个数组并与iOS9和更新版本兼容?
我不想找到或添加联系人,我只想要一个数组中的所有数字和名称
gho*_*ron 10
下面的两个片段应该有所帮助.我已经双重声明了商店,如果您在同一范围内使用两个片段,则不需要这样做...
获得许可:
let store = CNContactStore()
store.requestAccess(for: .contacts) { (isGranted, error) in
// Check the isGranted flag and proceed if true
}
Run Code Online (Sandbox Code Playgroud)
阅读地址簿(我随机包含了一些密钥,但您可以选择适用于您的任何密钥.):
let contactStore = CNContactStore()
let keys = [CNContactPhoneNumbersKey, CNContactFamilyNameKey, CNContactGivenNameKey, CNContactNicknameKey, CNContactPhoneNumbersKey]
let request1 = CNContactFetchRequest(keysToFetch: keys as [CNKeyDescriptor])
try? contactStore.enumerateContacts(with: request1) { (contact, error) in
for phone in contact.phoneNumbers {
// Whatever you want to do with it
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3163 次 |
| 最近记录: |