Теперь я использую этот код для извлечения контактов с моего телефона:
var addressBookReff: ABAddressBookRef = ABAddressBookCreateWithOptions(nil, nil).takeRetainedValue()
let people:NSArray = ABAddressBookCopyArrayOfAllPeople(addressBookReff).takeRetainedValue()
for person in people{
if let name:String = ABRecordCopyValue(person, kABPersonFirstNameProperty)?.takeRetainedValue() as? String {
let numbers:ABMultiValue = ABRecordCopyValue(person, kABPersonPhoneProperty).takeRetainedValue()
if let number:String = ABMultiValueCopyValueAtIndex(numbers,0)?.takeRetainedValue() as? String {
self.arrOfDictContacts.addObject(["\(name)":"\(number)"])
}
}
}
Здесь я использую kABPersonFirstNameProperty
, чтобы получить только первое имя.
Я хочу получить полное имя контактов!!!
Если я использую kABPersonCompositeNameFormatFirstNameFirst
, тогда я получаю ошибку как Int is not convertible toABPropertyId
Простите меня. Если этот вопрос прост и у меня много ответов, я мог бы найти, что любой из них работает на меня, поскольку я не хочу вызывать дополнительную функцию.
Итак, как я могу получить полное имя и добавить его в словарь
arrOfDictContacts
?