1
我的目的是處理圖像庫中的一個圖像,並將該圖像直接保存到從AddressBook中選擇的一個人記錄(即,「湯姆」),我可以看到新圖像取代湯姆的前一張圖像,但我無法將其保存到AddressBook。如何使用SDK API將圖像保存到iphone的地址簿?
我實現了委託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);
什麼是錯誤('CFShow(錯誤);')? – kennytm 2010-04-19 08:20:52