访问联系人

应用过滤器

要访问联系人,我们应该将 NSPredicate 类型的过滤器应用于我们在授权联系人访问示例中定义的 contactStore 变量。例如,这里我们要整理名称与我们自己匹配的联系人:

迅速

let predicate = CNContact.predicateForContactsMatchingName("Some Name")

Objective-C

NSPredicate *predicate = [CNContact predicateForContactsMatchingName:@"Some Name"];

指定要获取的密钥

在这里,我们想要获取联系人的名字,姓氏和个人资料图片:

迅速

let keys = [CNContactGivenNameKey, CNContactFamilyNameKey, CNContactImageDataKey]

获取联系人

迅速

do {
    let contacts = try contactStore.unifiedContactsMatchingPredicate(predicate, keysToFetch: keys)
} catch let error as NSError {
    //...
}

访问联系方式

迅速

print(contacts[0].givenName)
print(contacts[1].familyName)
let image = contacts[2].imageData