2014-06-23 135 views
3

我想獲取記錄的ABRecordID,但它總是返回-1。 這裏是我的代碼:ABRecordGetRecordID返回-1

NSNumber *recordId = [NSNumber numberWithInteger:ABRecordGetRecordID(person)]; 

我可以檢索其它信息,沒有任何問題:/任何解決方案?

+1

當記錄尚未保存到數據庫時返回-1。查看「ABRecordGetRecordID」的文檔。 – rmaddy

+0

好吧,我明白了,但是我從iPhone模擬器中檢索這個條目,這是一個錯誤嗎?或者我應該使用不同的屬性來識別ABRecordRef? –

+0

我在模擬器和設備上的iOS 8上遇到了同樣的問題。 –

回答

5

您需要請求授權(ABAddressBookRequestAccessWithCompletion)才能獲得記錄標識符。否則,您只需獲得一份帶有數據副本的ABPersonRef