Доступ ко всей адресной книге Iphone - PullRequest
0 голосов
/ 17 июня 2010

Я разрабатываю приложение для резервного копирования всей адресной книги в amazon s3, но не могу найти какой-либо прямой iphone API, чтобы получить всю адресную книгу в любой структуре данных., чтобы записать массив адресной книги в файл в каталоге документов

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

NSString *addressPath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"AddressBook.plist"];


ABAddressBookRef addressBook = ABAddressBookCreate();

NSMutableArray *allPeople = [[[(NSArray*) ABAddressBookCopyArrayOfAllPeople(addressBook)autorelease]mutableCopy]autorelease];

[allPeople writeToFile:addressPath atomically:YES];

Но проблема в том, что файл не создается в каталоге документов ....

Любые предложения приветствуются ....

Заранее спасибо ...

Ответы [ 2 ]

0 голосов
/ 29 октября 2012

Вам потребуется эта функция: http://developer.apple.com/library/ios/#documentation/AddressBook/Reference/ABPersonRef_iPhoneOS/Reference/reference.html#//apple_ref/doc/uid/TP40007210

Массив всех людей возвращается.Прочитайте документацию для получения дополнительной информации.Удачи!

0 голосов
/ 17 июня 2010

Я не уверен на 100%, но, возможно, одновременный доступ ко всей адресной книге не разрешен.У Apple есть AddressBookPeoplePicker по какой-то причине, хотя выбирать всех в AddressBook по одному человеку за раз было бы сложно.

Возможно, вы сможете настроить цикл для программного прохождения по адресной книге.Затем добавьте его в свой собственный NSMutableArray.

...