Теперь я использую этот код, чтобы извлечь контакты из моего телефона:Как получить полное имя Контактов в Swift
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
?
Что такое «запись» здесь? – AAA
@AAA в вашем коде выше, это будет «человек». – erdekhayser
да, я отредактировал ваш ответ, и он работает :) – AAA