Моя цель - обработать одно изображение из библиотеки изображений и сохранить это изображение непосредственно в одной записи человека (например, «Том»), которая выбрана в AddressBook. Я вижу, что новое изображение заменяет предыдущее изображение Тома, но я не могу сохранить его в адресную книгу.
Я реализовал делегат ABPeoplePickerNavigationControllerDelegate и использовал следующую логику, но что бы я ни пытался, измененные записи не могут быть сохранены в адресных книгах.
Любые подсказки или предложить? Спасибо
ABAddressBookRef addressBook= ABAddressBookCreate();
CFErrorRef error = NULL;
BOOL wantToSaveChanges = YES;
ABRecordSetValue(person, kABPersonFirstNameProperty, @"Shi", &error);//, &error)
NSData * dataRef = UIImagePNGRepresentation(cellImage);
ABPersonSetImageData(person, dataRef, &error);
if (ABAddressBookHasUnsavedChanges(addressBook)) {\
NSLog(@"need to save ");
if (wantToSaveChanges) {
ABAddressBookSave(addressBook, &error);
} else {
ABAddressBookRevert(addressBook);
}
}else {
NSLog(@"no changes");
}
if (error != NULL) {/*... Handle error. ...*/
NSLog(@"error happened here " );
}
CFRelease(addressBook);