是否可以使用AddressBook和联系人框架根据组织名称或职位名称获取特定联系人信息或联系人信息列表?根据组织名称或工作标题获取iOS联系人列表
回答
我不这么认为,您只需在谓词中给出组织名称或职位即可从CNContact存储中获取联系人。您应该在密钥中包含组织名称和职位名称,然后重新访问联系人列表。检查代码片段。我希望它有帮助。谢谢。
func fetchContacts()
{
let contactStore = CNContactStore()
var allContainers : [CNContainer] = []
var allContacts : [CNContact] = []
//you can use one of these/ all keys to filter contacts
let keysToFetch = [CNContactGivenNameKey, CNContactOrganizationNameKey, CNContactJobTitleKey]
var OrganizationArray = [CNContact]()
do{
// _______________ Fetch all the Containers_________________________________
allContainers = try contactStore.containersMatchingPredicate(nil)
}
catch{
print(error)
}
for container in allContainers{
let fetchPredicate = CNContact.predicateForContactsInContainerWithIdentifier(container.identifier)
do{
//____________Fetch all the contacts corresponding to every Container______
let containerResults = try contactStore.unifiedContactsMatchingPredicate(fetchPredicate, keysToFetch: keysToFetch)
// allContacts.appendContentsOf(containerResults)
for contactRec in containerResults {
if contactRec.organizationName != "" {
OrganizationArray.append(contactRec)
}
}
}
catch{
print(error)
}
}
}
你的答案这个我知道,我是希望有一些其他方式可以基于自定义标签获取特定联系人,而不是基于名称属性。如果我们按照此方法,则必须遍历设备中可用的所有联系人以获取或更新特定联系人。 –
据我所知,您可以根据联系人姓名,联系人标识符,容器和组获取联系人。苹果公司没有提供其他物业的预测。我认为你必须遍历所有的联系人。 – Jush
看起来没有选择。 –
- 1. 根据联系人姓名获取sectionIndex标题
- 2. 如何在Android中按组名称获取联系人列表?
- 3. 如何获取联系人列表组的帐户类型名称和图标?
- 4. 如何获取联系人组ID或名称?
- 5. 问题获取flickr联系人列表
- 6. iPhone联系人 - 获取公司名称
- 7. 如何获取给定名称的建议联系人列表
- 8. 根据ios中的公司标识符对联系人名称进行编程
- 9. android获取自定义联系人类型标签名称
- 10. 通过群组名称使用gdata-contacts获取联系人
- 11. 获取联系人的组?
- 12. Android获取联系人列表,但没有SIM卡联系人
- 13. 如何获取Android联系人列表上联系人的ID?
- 14. Google联系人每个联系人的API检索组名称
- 15. 从Android联系人数据库获取联系人ID未按预期工作
- 16. 如何使用Apple联系人框架更快速地获取iOS联系人?联系人列表很长?
- 17. 从域名获取组织名称
- 18. 获得来自联系人列表的名称和数量
- 19. Android联系人列表获取地址
- 20. 通过gloox获取联系人列表
- 21. 黑莓 - 获取联系人列表
- 22. 从android联系人获取组织详细信息?
- 23. 如何获取Outlook联系人组(通讯组列表)
- 24. 使用C#获取Excel工作表工作表名称列表
- 25. Corona SDK获取iOS中的联系人列表
- 26. 如何获取iOS 6中的用户联系人列表?
- 27. 获取iOS上所有联系人的列表
- 28. 根据字体系列组织字体
- 29. 在数组中获取最长列表标题名称javascript Sharepoint
- 30. Android:我试图根据显示名称搜索联系人
请务必阅读本,努力提高你的问题:http://stackoverflow.com/help/mcve –
如果任何人有一个更好的解决办法,请在下面添加 –