2015-10-14 3 views
6

のObjective Cで画像データを読み込み、常に上げ、実行時に客観C.IOSは9コンタクトフレームワークは、私がunifiedContactWithIdentifierを使用してCNContactを再フェッチした後、画像データを取得しようとする例外が

にCNContactImageDataKey、 を使用して、私は常に同じを持っています例外CNPropertyNotFetchedException contactを再フェッチして、imageDataAvailableを呼び出すimageDataをチェックしています。それは意味をなさない。 swiftの同じコードが素晴らしいです。

対象フレームワークのContactフレームワークに問題はありますか?

iOS 9.0.2のiPhone 6 Plusで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];        
} 

誰もが私を助けることができますか? ありがとう、 Michele

+1

ヘルプガイドラインに従った後にお手伝いできます。特に、http://stackoverflow.com/help/mcveをチェックしてください – Prune

答えて

9

あなたのkeysToFetchにCNContactImageDataAvailableKeyとCNContactThumbnailImageDataKeyを追加する必要があります。

0

@エリック回答は部分的に正しいです。 keysToFetchにCNContactImageDataKeyを追加する必要があります。それ以外の場合、アプリケーションはimageDataにクラッシュします。

関連する問題