2011-01-09 9 views

Antwort

28

sollten folgende Arbeiten:

ABAddressBookRef aB = ABAddressBookCreate(); 
ABRecordRef source = ABAddressBookCopyDefaultSource(aB); // or get the source with ABPersonCopySource(somePersonsABRecordRef); 
NSArray *arr = (NSArray *)ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering(aB, source, kABPersonSortByLastName); 
// you can also use kABPersonSortByFirstName instead of kABPersonSortByLastName 
+4

Hinweis: Die bevorzugte Sortierreihenfolge ABPersonGetSortOrdering() - dies durch Benutzereinstellung in der Sortierreihenfolge füllen. – n13

+1

Und danke, das ist großartig. Es ist viel schneller als alle Kontakte zu bekommen und sie in Code zu sortieren, wie ich es in vielen anderen Beispielen gesehen habe. – n13

+1

Hat jemand das in Swift geschafft? Ich kann es nicht zur Arbeit bringen. – Dean

0

Das ist für mich gearbeitet:

ABAddressBookRef addressBook = ABAddressBookCreateWithOptions(NULL, error); 
ABRecordRef source = ABAddressBookCopyDefaultSource(addressBook); 
NSArray *allPeople = (__bridge NSArray *)ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering(addressBook, source, kABPersonSortByFirstName); 
Verwandte Themen