バージョン2.0から2.1へのアップグレードをシミュレートしようとしています。テストフライトでバージョン2.0をホストしているので、デバイスにインストールしました。次に、xcodeからアプリを実行してみました。ただし、アプリが重複することはなく、同じ名前の2つのアプリが作成されました。xcodeからアプリを実行すると、古いバージョンに重なるようにするにはどうすればよいですか?
バンドル識別子が同じであることを確認しました。
バージョン2.0から2.1へのアップグレードをシミュレートしようとしています。テストフライトでバージョン2.0をホストしているので、デバイスにインストールしました。次に、xcodeからアプリを実行してみました。ただし、アプリが重複することはなく、同じ名前の2つのアプリが作成されました。xcodeからアプリを実行すると、古いバージョンに重なるようにするにはどうすればよいですか?
バンドル識別子が同じであることを確認しました。
更新中に取得できる情報は、こちらのリンクで見つけることができます。
ユーザーがアプリを更新すると、ドキュメントフォルダはNSUserDefaultsを含めてそのまま保存されます(ただし、ユーザーがiTunes経由でアプリをダウンロードし、アプリケーション全体を置き換えて、「OMG!更新によってすべてのレベルの進行が停止しました!」と叫ぶことがあります)。アプリケーションバンドルは消去され、新しいものに置き換えられます(とにかく、ユーザーは読み取り専用です)。新しいビルドバージョンの再デプロイで十分です。
シミュレーター内のアプリストアにアクセスすることはできません。理由は次のとおりです。@リンクはこちら
エミュレータではなくシミュレータです。シミュレーターにAppStoreがあったとしても、シミュレーターがx86コードを実行している間、ARM CPU用にコンパイルされているため、ストア内のどのアプリも機能しません。
ここにある別のスタックオーバーフロー@リンクは次のように述べています。
古いバージョンをビルドしてインストールし、データを生成してから、その上に新しいバージョンをインストールします。
Appstoreに送信する前のテストでは、通常、AppStoreから古いバージョンを再度ダウンロードしてから、Xcodeを使用して新しいバージョンをインストールします-次のアップデートのために...;-)
そして、別のスタックオーバーフロー(私がリンクを失った)は次のように述べています:
いいえ、シミュレーターはi386バイナリーを実行し、iPhoneアプリストアアプリはARMバイナリーアプリです。
iOSアプリはマシンコードにコンパイルされ、Androidアプリはバイトコードを使用して仮想マシンで実行され、実行時にマシンコードに変換されます。
いいえ、シミュレーターで実行できるとは思いませんが、古いプロジェクトをiPhoneに保存して、両方をテストすることはできます。そして、アップルのドキュメントは@このリンクです。
これを読んでください:https ://developer.apple.com/library/ios/technotes/tn2285/_index.html
XCodeで更新をシミュレートすることはできません(シミュレーターでも接続されたデバイスでも)。IPAファイルを作成し、iTunesを介して更新プロセスをシミュレートする必要があります。