我在ios 7和ios 8之间混淆了ABPersonCopyImageData。
以下两种情况,我已将图片添加到系统地址簿中的联系人。
在ios7上,我使用代码,它可以工作,我可以得到imageData:- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person{
CFDataRef imagedata = ABPersonCopyImageData(person);
if (imagedata) {
self.imageData = (__bridge NSData*)imagedata;
CFRelease(imagedata);
}
return Yes;
}
但是在ios8上,由于旧方法被废弃,我使用了新的API,我无法获得图像数据:
- (void)peoplePickerNavigationController:(ABPeoplePickerNavigationController*)peoplePicker didSelectPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier{
CFDataRef imagedata = ABPersonCopyImageData(person);
if (imagedata) {
self.imageData = (__bridge NSData*)imagedata;
CFRelease(imagedata);
}
}
你可以帮帮我吗? 谢谢。