2016-04-27 10 views
1

私は自分の開発環境にApple Watchを追加しましたが、XCodeが自動的にそれを処理しないため、このデバイスを組み込むように開発プロビジョニングプロファイルを再生成しなければなりませんでした。 iPhoneとiPadの両方でアプリを再実行したところ、iCloudにデータがあることがわかっていても、アプリにデータが表示されなくなりました。デバイスの1つでデータを作成すると、この新しい情報が他のデバイスに表示されます。だから、私のプロビジョニングプロファイルを再作成して、デバイスがiCloudの古いデータを無視し始めたのですが、そこにあったものを取り戻す方法はありますか?プロビジョニングプロファイルの変更はiCloudに影響しますか?

答えて

0

プロビジョニングとは関係ありません。古いバージョンのアプリで元のデータを作成しました。その後、Core Dataモデルに帰属し、正常に動作するように見える自動移行を実装しましたが、新しくプロビジョニングされたバージョンのアップデートされたアプリケーションをインストールした後、古いデータにアクセスできなくなったようです。私は1.0のバージョンを再インストールし、データはすべて戻ってきました。これは、ユーザが古いバージョンでデータを作成してからアップデートをインストールすると、本番環境で何が起こるか心配しているので、問題があります。彼らのデータもiCloudで失われますか?

0

同じバンドルIDを持つ同様に署名されたアプリケーションを置き換える場合は、データを移行する必要があります。 1.0バージョンがApp Storeから提供され、それを開発またはアドホックビルドに置き換えた場合、App Storeビルドと非App Storeビルドで異なるデータが格納されるため、移行は行われません。詳細については、thisを参照してください。

1.0バージョンと新しいバージョンの両方が内部バージョン(つまりどちらもApp Storeからのものではない)であることを確認できますか?

+0

はいこれらは両方とも内部バージョンです。アプリはまだApp Storeでリリースされていません。上記の私の答えは全く正確ではありません。ウォッチ拡張機能をテストするためにアプリのウォッチターゲットを実行すると、既存のデータが電話から消えて、初めて消滅したときに作成したデータに置き換えられます。ウォッチアプリのバンドルIDにより電話機が別のコアデータストアを使用している可能性はありますか? – mashers

+0

それは可能ですが、それは珍しいことです。バージョン1と2の間でバンドルIDを意図せずに変更していないことは確かです。そうでなければ、これはiOS/Xcodeのビルドバグです。 Apple Watch拡張機能を使ってiCloud CoreDataを行ったことはありません。あなたはこの質問を見ましたか?http://stackoverflow.com/questions/30240585/using-same-icloud-enabled-coredata-store-across-watch-extension-and-iphone – wottle