2012-08-17 64 views
0

我已經實現了獲取聯繫人列表表單地址簿的代碼。對於我已經使用這個代碼不創建地址簿對象

ABAddressBookRef addressBook = ABAddressBookCreate(); 
CFArrayRef allSources = ABAddressBookCopyArrayOfAllPeople(addressBook); 
CFIndex nPeople = ABAddressBookGetPersonCount(addressBook); 

當這個代碼執行,然後我的應用程序崩潰和崩潰報告中,我得到了

Exception Type: EXC_BREAKPOINT (SIGTRAP) 
Exception Codes: 0x0000000000000001, 0x000000000000defe 
Crashed Thread: 5 

而且我與iOS 6.0的iPhone 3GS測試。

那麼我如何解決這個錯誤呢?

+0

當我閱讀標題時,我以爲OP如何*不*創建地址簿... – 2012-08-18 06:24:25

回答

0

使用此代碼,它會給你的對象列表。

ABAddressBookRef addressBook = ABAddressBookCreate(); 
ABRecordRef source = ABAddressBookCopyDefaultSource(addressBook); 
NSArray *persons = (NSArray *)(ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering(addressBook, source, kABPersonSortByFirstName)); 
+0

我在地址簿中獲得零值,而我在地址簿中有152個聯繫人。 – ios 2012-08-17 08:08:09

+0

我得到,因爲我有一個contact.Check其他財產。 – Sandy 2012-08-17 08:53:05

+0

請檢查這[鏈接](http://stackoverflow.com/questions/11985317/retrieve-selected-group-from-native-contact-application/11986219#11986219),我給了一個答案嘗試that.It可能會幫助您。 – Sandy 2012-08-17 09:01:40

1

感謝您的支持,我得到了解決方案。我的問題的解決方案是

ABAddressBookRef addressBook = ABAddressBookCreate();

這在ios 6.0中已棄用。