Książka adresowa iOS 6 nie działa?
Moja metoda programowego pobierania adresów e-mail z książki adresowej nie działa już na urządzeniach z systemem iOS 6. Pracował w iOS 5 i, co dziwne, nadal działa w symulatorze iOS 6. Czy istnieje nowy sposób programowego pobierania kontaktów z książki adresowej użytkownika?
ABAddressBookRef addressBook = ABAddressBookCreate();
CFArrayRef allPeople = ABAddressBookCopyArrayOfAllPeople(addressBook);
CFIndex nPeople = ABAddressBookGetPersonCount(addressBook);
self.contacts = [[NSMutableArray alloc] init];
int contactIndex = 0;
for (int i = 0; i < nPeople; i++) {
// Get the next address book record.
ABRecordRef record = CFArrayGetValueAtIndex(allPeople, i);
// Get array of email addresses from address book record.
ABMultiValueRef emailMultiValue = ABRecordCopyValue(record, kABPersonEmailProperty);
NSArray *emailArray = (__bridge_transfer NSArray *)ABMultiValueCopyArrayOfAllValues(emailMultiValue);
[self.contacts addObject:emailArray];
}
Aby wyjaśnić, powyższe nie ulega awarii, po prostu nie zwraca żadnych wyników. ABAddressBookCopyArrayOfAllPeople jest pusty. Dzięki!