2016-09-01 1 views
2

最近、一部のユーザーが連絡先が自分のiCloudアカウントと同期していないと不平を言っていました。それはiOS 8で動作していて、iOS 9のアップデートの1つで不思議に停止しました。iOS 10を使用して、AddressBook.frameworkからContacts.frameworkへの非推奨にリンクしている可能性があると考えました。しかし、新しいContacts.frameworkに移動しても問題は解決しませんでした。ローカルに作成されたCNContactがiCloudアカウントに同期されていません

デバイスのコンソールにエラーログはなく、デバイス上で連絡先が作成または更新されているときにフレームワークによってエラーが生成されることはありません。

連絡先は、iCloudや他のiCloudアカウントに接続されているデバイスと同期していないデバイスでのみ表示され、利用できます。

答えて

3

多くのデバッグの後、問題をimageDataプロパティに分離することができました。 imageDataが入力された連絡先は同期されておらず、画像のない少数のユーザーは同期されていました。これにより、imageDataのコードが表示されます。私はUIImagePNGRepresentationを使って、のUIImageNSDataに変換していたことが分かります。 UIImageJPEGRepresentationに移動すると問題が解決しました。 1日が保存され、iCloudアカウントが同期されます。

この変更を文書化してくれていないAppleに感謝します。 (これは文書化されていなくても画像の大きさかもしれません)

関連する問題