0

私は最近、ソースのコンパイルビルド フェーズで問題を発見しました。これは、MyDB.xcdatamodeldMyDB.xcdatamodel をビルドにコンパイルすることでした (おそらく、Xcode バージョン間の移行などから残ったものでしょう)。最近使用するライブラリを使い始めるまで、これは問題ではありませんでした:

[NSManagedObjectModel mergedModelFromBundles:nil]

これは両方の MyDB ファイルを見つけて、重複するエンティティをマージできないというエラーをスローします。ただし、彼らの解決策の問題は、アプリの削除が含まれることです:)

ビルド フェーズで問題を修正し (MyDB.xcdatamodel 行を削除しました)、アプリを新規インストールすると正常に動作しますが、既存のインストール (つまり、更新) の上にアプリをインストールすると、引き続き取得されます。重複エンティティに関する同じ DB エラー。これは、MyDB.xcdatamodel ファイルがまだユーザーのバンドルに含まれているためだと思います。

私の質問は、既存のインストールのバンドルからこのファイルを削除するにはどうすればよいですか?

4

2 に答える 2

1

古いファイルは、開発中に Xcode を使用してアプリケーションをインストールする場合にのみ取り残されると思います。代わりに、アドホック配布によるアップグレードをテストしてみてください。この問題は発生しないはずです。

于 2012-05-09T16:45:01.473 に答える
-2

すべてのターゲットをクリーンアップし、シミュレーター/デバイス上のアプリを削除しますか? :)

于 2012-05-09T16:40:48.790 に答える