我尝试使用unifiedContactWithIdentifier:keysToFetch:error:并使用CNContact
ImageDataKey重新获取CNContact后获取imageData,
在目标C.
在目标C.
在运行期间,我总是有相同的异常CNPropertyNotFetchedException甚至重新联系并检查imageData调用imageDataAvailable.这没有意义.
swift中的相同代码很棒.
那么,目标C的Contact框架中是否存在问题?
我在iOS 6和iPhone 9.0.2上使用XCode 7.0构建.
这里的代码:
- // ...
- // ...
- if([currentNativeContact isKeyAvailable:CNContactImageDataKey] &&
- currentNativeContact.imageDataAvailable) {
- previewImage = [UIImage imageWithData:currentNativeContact.thumbnailImageData];
- }
- else {
- NSError *error;
- currentNativeContact = [self.contactsStore unifiedContactWithIdentifier:currentNativeContact.identifier keysToFetch:@[CNContactImageDataKey] error:&error];
- if(!error && currentNativeContact.imageDataAvailable)
- previewImage = [UIImage imageWithData:currentNativeContact.thumbnailImageData];
- }
谁能帮我 ?
谢谢,
米歇尔
解决方法
您需要将CNContactImageDataAvailableKey和CNContactThumbnailImageDataKey添加到keysToFetch.