私は少なくとも300のエントリを持つアプリを持っています。各エントリは、無料またはアプリ内購入可能なオブジェクトを表します。アプリは販売中で、バンドルには事前に埋め込まれたsqliteファイルが付属しています。アプリが初めて実行されると、データベースがそこにあるかどうかがチェックされます。そうでなければ、バンドルからアプリケーションのディレクトリにsqliteファイルをコピーし、魔法が始まります。iPhone - coreデータの移行
時間が経過してユーザーがアプリ内オブジェクトを購入すると、データベースは購入したエントリにマークされます。
今、私は新しいバージョンをリリースしようとしています。この新しいバージョンには、オブジェクトを表す別のsqliteファイルが付属しています。構造は同じですが、新しいデータベースを表す新しいsqliteファイルでオブジェクトが追加されました。
私はドキュメントを読んでいます。私は何をする必要があるかの例を見つけていないので、私はあなたに尋ねます。どの手順を踏む必要がありますか?ユーザーが持っている現在のデータベース(バージョン1)を新しいバージョン(バージョン2)に置き換える必要がありますが、私がこれを実行している間はバージョン2が必要です。バージョン1にはすべての変更がインストールされています(つまり、購入に関する情報が含まれているエンティティのプロパティをコピーしてください。
を私はそれを行う方法を教えてください。このバージョニングていますか?移行?
感謝。
コアデータを使用してデータベースのバージョンを設計/入力したか、またはsqlliteで直接再生しましたか? –
コアデータを使用しました。私はtxtファイルを読んで私のためのデータベースファイルを作成するソースコード上に "データベースを構築する"モードがあります。次に、sqliteファイルを取得してバンドルし、このモードを無効にします。 – SpaceDog