Я создаю приложение, которое синхронизирует контакты из онлайн-источника. Все работает отлично, до сих пор ... когда телефон имеет одну адресную книгу:ABAddressBook - несколько адресных книг?
ABAddressBookRef addressBook = ABAddressBookCreate();
ABRecordRef group1 = ABGroupCreate();
ABRecordSetValue(group1,kABGroupNameProperty,@"Group1",nil);
ABAddressBookAddRecord(addressBook,group1,nil);
ABAddressBookSave(addressBook,nil);
ABRecordRef person = ABPersonCreate();
// Edit person values...
ABGroupAddMember(group1,person,nil);
ABAddressBookAddRecord(addressBook,person,nil);
ABAddressBookSave(addressBook,nil);
CFRelease(person);
CFRelease(addressBook);
Проблема возникает, однако, когда телефон уже есть несколько адресных книг. Я тестирую на телефоне, который имеет одну адресную книгу для всех контактов, одну для Gmail и т. Д. Когда я добавляю контакт указанным выше образом, он добавляет его в адресную книгу Gmail и в процессе разбивает идентификатор «Group1» от контакта. Есть ли способ изменить ABAddressBookRef, чтобы указать на конкретную адресную книгу в телефоне?