2013-07-27 13 views
8

Mam aplikację, która dodaje kontakty do książki adresowej w systemie iOS, a wszystko, czego potrzebuję, to zapisanie ABRecordID lub ABRecordref natychmiast po zapisaniu kontaktu.Uzyskaj identyfikator ABRecordID z nowo dodanego obiektu książki adresowej ios

ABAddressBookAddRecord(addressbook, newPerson, &theerror); 
ABAddressBookSave(addressbook, &theerror); 

To pytanie jest bardzo podobny, ale nie rozumiem odpowiedź: ABRecordID for a record in addressbook(unique id for inserted record in addressbook)

Jak wiesz

ABRecordID ABRecordGetRecordID (
ABRecordRef newPerson 
); 

pomocy tutaj byłoby fantastyczne - dzięki!

Odpowiedz

19

Po prostu zapisz ABRecordGetRecordID(newPerson) po zapisaniu książki adresowej (wcześniej nie będzie prawidłowego identyfikatora).

//... 
ABRecordID recordID = ABRecordGetRecordID(newPerson); 

ABRecordID jest taka sama jak int_32 (32-bitową liczbę całkowitą).

+0

To jest bilet! Dzięki, omz da da man. Przyjmę twoją odpowiedź za 2 minuty, kiedy będę mógł. –

+0

Zawsze daje -1 jako ABRecordID z natywnym selektorem kontaktowym ABRecordRef w ios 8.1 – Abhishek

+1

@Abhishek jest to kompletne przypuszczenie, ale może dlatego, że nie uzyskujesz pozwolenia na kontakt od użytkownika, gdy używasz rodzimego wyboru użytkownika ios 8, który ukrywa rekord id, zawsze zwracając go jako -1? – danny