/ / Витягне повну назву адресної книги та номер з об'єкта ABperson c iphone - iphone, object-c, abaddressbook

Витягне повну назву адресної книги та номер з об'єкта ABpersona c iphone - iphone, object-c, abaddressbook

Мені потрібно знати, як витягувати everyname & number з адресної книги в xcode для iphone. Мені потрібно мати ім'я та номер у такому форматі:

Джон Доу: 000000000000000 Джейн Доу: 000000000000000

Відповіді:

7 для відповіді № 1

Ви шукаєте всі телефонні номери всіх людей у ​​адресній книзі? Подивись на ABAddressBookCopyArrayOfAllPeople.

Ви можете використовувати його таким чином: (неперевірене кодування в браузері)

    ABAddressBookRef _addressBookRef = ABAddressBookCreate ();
NSArray* allPeople = (NSArray *)ABAddressBookCopyArrayOfAllPeople(_addressBookRef);
NSMutableArray* _allItems = [[NSMutableArray alloc] initWithCapacity:[allPeople count]]; // capacity is only a rough guess, but better than nothing
for (id record in allPeople) {
CFTypeRef phoneProperty = ABRecordCopyValue((ABRecordRef)record, kABPersonPhoneProperty);
NSArray *phones = (NSArray *)ABMultiValueCopyArrayOfAllValues(phoneProperty);
CFRelease(phoneProperty);
for (NSString *phone in phones) {
NSString* compositeName = (NSString *)ABRecordCopyCompositeName((ABRecordRef)record);
NSString* field = [NSString stringWithFormat@"%@:%@",compositeName,phone];
[compositeName release];
[_allItems addObject:field];
}
[phoness release];
}
CFRelease(_addressBookRef);
[allPeople release];
allPeople = nil;