Как я могу получить все контакты с номером мобильного телефона, используя структуру контактов в Swift?

Я использую try contactStore.unifiedContactsMatchingPredicate с ключом CNContactPhoneNumbersKey но я не уверен что NSPredicate использовать, чтобы просто принять все CNContactс ненулевым CNContactPhoneNumbersKey,

1 ответ

Вы должны перечислить все хранилище контактов, так как предикаты еще недостаточно гибки:

var contactsWithPhoneNumber = [CNContact]()
let fetchRequest = CNContactFetchRequest(keysToFetch: [CNContactGivenNameKey, CNContactFamilyNameKey, CNContactPhoneNumbersKey])
try! contactStore.enumerateContactsWithFetchRequest(fetchRequest) { contact, stop in
    if contact.phoneNumbers.count > 0 {
        contactsWithPhoneNumbers.append(contact)
    }
}
Другие вопросы по тегам