1

アプリにいくつかの初期コア データ オブジェクトを含める必要があります。ユーザーはこれらのオブジェクトを削除することができ、アプリの次回の起動時にオブジェクトは削除されたままになります。アプリがインストールされたときにのみ、コアデータベースに選択した初期値を入力するように実装するにはどうすればよいですか? つまり、アプリが起動または起動するたびにこれらの値が読み込まれるのは望ましくありません。一度だけ。xcode のグラフィック インターフェイスを使用してエンティティを作成する方法と同様に、これを行う方法はありますか?

4

1 に答える 1

0

plist や xml ファイルなどの他の形式でデータを保持し、最初の実行時にそれをインポートして、必要な Core Data オブジェクトをコードで作成し、永続ストアに保存します。NSUserDefaultsアプリが既に実行されていて、アイテムが正常に作成されたかどうかを記録するキーも設定する必要があります。

アプリが起動したら、ユーザーの既定のキーを確認します。存在しない場合は入力し、そうでない場合は入力しません。質問で指摘したように、ユーザーがシードデータを削除した可能性があるため、永続ストアの内容を確認するだけでは不十分です。

iCloud を使用している場合は、アプリが他のデバイスで既に実行されているかどうかを最初に確認する必要があります。

于 2014-06-16T21:12:27.607 に答える