2011-12-07 100 views
1

Currenty我想iPhone的通訊錄數據庫加載到我的iPhone應用程序db..i的意思是我想的通訊錄數據轉儲到我的應用程序數據庫負載iphone的通訊錄數據庫

這可能嗎?如果是的話給我一個鏈接或引用的任何幫助

廣東話我出口AddressBook.sqlitedb另一個sqlite的分貝爲我的iPhone應用程序,這樣做

感謝?

我的意思是,我是否需要迭代循環?

是無法加載addressbook.db數據到我的數據庫中,我打算創建自己的地址簿......

+0

感謝您的回覆。這是將地址簿數據加載到我的應用程序數據庫的唯一方法嗎?我的意思是我需要迭代循環如上所述。不可能將addressbook.db數據加載到我的數據庫中...感謝您的幫助 – user198725878

回答

1

是的,它可能操作系統。

看看這裏:

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

謝謝回覆。並且這是將地址簿數據加載到我的應用程序數據庫的唯一方法?我的意思是我需要迭代循環如上所述。不可能將addressbook.db數據加載到我的數據庫中...感謝您的幫助 – user198725878

+1

我製作了一個名爲HiBye的地址簿應用程序,但我沒有找到克隆所有地址簿的方法。我建議使用CoreData。 – shannoga

0

This鏈接可能是有用的周到,謝謝。 編輯: 您需要搜索一些谷歌鏈接以及相同頁面上的相關帖子。它會給你其他方式。同樣根據您的評論,您首先需要從這些不同答案中給出的任何方法中獲取地址簿中的數據,並將其存儲在NSDictionary或數組中,之後您可以將其存儲到本地數據庫或Web服務器中支持的方法。希望這可以幫助你。

0

這應該有你需要開始一切:

ABAddressBook Documentation

的API是註定不會被用來雖然轉儲地址簿 - 開發人員都應該在禮貌與集中式數據庫進行交互方式。

我建議你聯繫的數據庫的完整備份你開始調試前;)

0

有我前發佈了,而有一些很好的答案,可能是一些對你有用的另一個問題#1。

但是回答您的具體問題,你是否可以AddressBook.sqlitedb導出到您的應用程序,我想答案可能是否定的。您可以通過AB包裝器實現,但不能直接複製。