Загрузить адресную книгу iphone db - PullRequest
1 голос
/ 07 декабря 2011

В настоящее время я хочу загрузить базу данных адресной книги iphone в мое приложение iphone db .. я имею в виду, я хочу выгрузить данные адресной книги в свое приложение db

Возможно ли это? если да, дайте мне ссылку или ссылки для этого

Спасибо за любую помощь

Не могу ли я экспортировать AddressBook.sqlitedb в другую базу данных sqlite для моего приложения для iphone?

Я имею в виду, нужно ли повторять цикл?

Невозможно загрузить данные addressbook.db в мою базу данных, в которой я собираюсь создать свою собственную адресную книгу ...

Ответы [ 4 ]

1 голос
/ 07 декабря 2011

Да, это возможно.

Смотрите здесь:

http://developer.apple.com/library/ios/#documentation/ContactData/Conceptual/AddressBookProgrammingGuideforiPhone/Introduction.html

Хотелось бы вот так:

ABAddressBookRef addressBook = ABAddressBookCreate( );
CFArrayRef allPeople = ABAddressBookCopyArrayOfAllPeople( addressBook );
CFIndex numberOfAllPeople = ABAddressBookGetPersonCount( addressBook );

for ( int i = 0; i < numberOfAllPeople; i++ )
{
ABRecordRef ref = CFArrayGetValueAtIndex( numberOfAllPeople, i );
//use the ref to store its properties in your db
}
0 голосов
/ 07 декабря 2011

Есть еще один вопрос Stackoverflow, который я недавно опубликовал и в котором есть несколько хороших ответов, которые могут быть вам полезны.

Однако, чтобы ответить на ваш конкретный вопрос о том, можете ли вы экспортировать AddressBook.sqlitedb в ваше приложение, я думаю, что ответ, вероятно, нет. Вы можете достичь этого с помощью AB Wrapper, но не путем прямого копирования.

0 голосов
/ 07 декабря 2011

В нем должно быть все, что вам нужно для начала:

Документация адресной книги

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

Я рекомендую сделать полную резервную копию базы данных контактов перед началом отладки;)

0 голосов
/ 07 декабря 2011

Эта ссылка может быть полезна для вас. Спасибо.РЕДАКТИРОВАТЬ: Вам нужно искать в некоторых ссылках Google, а также соответствующие сообщения на той же странице.Это даст вам другие способы обойти.Кроме того, согласно вашему комментарию, вам прежде всего нужно извлечь данные из адресной книги из любого из методов, приведенных в этих разных ответах, и сохранить их в NSDictionary или массиве, а затем вы можете сохранить их в своей локальной базе данных или веб-сервере, используяподдерживаемые методы.Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...