1

コア データ スタックとして NSManagedDocument を使用して、コア データ アプリに iCloud サポートを実装しています。

すべてが正常に動作しているように見えますが、予期しない動作がいくつかあります。

iPhone と iPad にユニバーサル アプリをインストールすると、次のようになります。

iPhone から追加されたエンティティは iPad に iCloud 化されます。iPad から追加されたエンティティは、iPhone に iClouded されます。iPhone から追加され、iPhone で削除されたエンティティは iPad で自動的に削除されます iPad から追加され、iPad で削除されたエンティティは iPhone で自動的に削除されます

でも ...

iPhone から追加され、iPad で削除されたエンティティは iPhone で削除されません iPad から追加され、iPhone で削除されたエンティティは iPad で削除されません

これは予想される動作ですか?これは、iPhone および iPad での Apple の「メモ」アプリの動作とは異なります。メモへの変更は、すべてのデバイスに反映されます。

これが正しい iCloud の動作でない場合、私が迷った可能性のあるアイデアはありますか?

本当にありがとう。

4

1 に答える 1

2

これは予想される動作ですか?

それは、「期待される」をどのように定義するかによって異なります。これは Apple が意図した動作ではありませんが、この問題に遭遇したのはあなたが最初ではありません。実際には、ええ、少なくとも時々は予想されます。

あなたが確認する必要があるいくつかのこと:

  • アプリを終了して再起動しても、この状態は持続しますか? インスタンスが削除されているのに、アプリが UI を適切に更新していない可能性があります。これにより、アプリを再起動するまで、オブジェクトがまだそこにあるように見えます。

  • iCloud から受け取る「インポートした」通知を見てください。挿入、更新、および削除されたインスタンスのオブジェクト ID が含まれている必要があります。受信側で削除されたオブジェクトが正しく示されていることを確認してください。

  • オブジェクトの処理を調べて、削除されるべきオブジェクトを何らかの形で保持したり、再作成したりしていないことを確認してください。

ただし、iCloud で Core Data を使用している場合は、問題が発生しており、これを修正できない可能性があることに注意してください。Core Data の iCloud 統合は、まだそれほど信頼できるものではありません。問題が発生する可能性があり、深刻すぎて修正できない可能性があります。

于 2013-02-11T17:23:46.390 に答える