web-dev-qa-db-ja.com

承認後にアプリのバンドルIDを変更できますか?

アプリを少し前に承認し、*プロビジョニングプロファイルを使用したので、次のようなものを作成しました。

com.mydomain.MyApp

しかし今、私はプッシュ通知を追加する必要があり、私は*プロビジョニングプロファイルを使用しているはずがなく、それは独自のアプリIDとプロファイルを持っている必要があります。

何も壊すことなくアプリのアップデートを達成するためにはどうすればよいですか

23
Dabor Troppe

アプリのバンドル識別子は、更新間で常に同じである必要がありますが、AppIDは実際には異なる場合があります。したがって、必要なのは、ワイルドカードの代わりに元のアプリと同じバンドルIDを使用する新しいAppIDを作成することだけです。

ワイルドカードを使用するアプリでも、通常のバンドル識別子が必要です。ワイルドカードAppIDを使用すると、任意のバンドルIDを使用できますが、まだ必要です。

以前は Appleの記事 がありましたが、オンラインで利用できなくなりました ただし、 アーカイブ は使用できます。

23
bovine

アプリのCFBundleIdentifierの更新をリリースする場合、そのアプリのCFBundleIdentifierを変更することはできません。アップロードすると、App Storeによって自動的に拒否されます。そう...

以前にワイルドカードアプリIDで開発されたアプリでiAdsを有効にする必要がありました。これが私がしたことです:

私のアプリで現在使用しているワイルドカードアプリIDは<AlphaNumeric>.*で、アプリのCFBundleIdentifiercom.companyname.mygameです。

<AlphaNumeric>.com.companyname.mygameという新しいアプリIDを作成しました。

新しいアプリIDを含む新しい開発および配布プロビジョニングプロファイルを作成しました。

新しいプロビジョニングプロファイルをXcodeとデバイスにダウンロードします。

その後、新しい非ワイルドカード配布プロファイルを使用してアプリをコンパイルできました。つまり、アップロード時にiAds(またはプッシュ)を有効にできました。 CFBundleIdentifierは変更されなかったため、新しいコンパイルは既存のアプリの更新として表示されます。

このプロセスが問題なく機能したことを確認できます。

11
hjd

「テクニカルノートTN2259」というタイトルの「よくある質問」の「iOSおよびMacアプリケーションへのアプリ内購入の追加」には、このビットがあります。

質問:iOSアプリケーションは現在、ワイルドカードアプリIDを使用するプロビジョニングプロファイルで署名されています。アプリIDを有効にしてアプリ内購入をサポートするにはどうすればよいですか?

回答:アプリIDを有効にしてアプリ内購入をサポートする方法については、iOSチーム管理ガイドの「アプリIDの作成と構成」セクションをご覧ください。

リンク先は ここ で、「APNS、iCloud、アプリ内購入、またはゲームセンターを含めるようにアプリを更新するには、明示的なアプリIDが必要です」というセクションがあります。

そうは言っても、アプリが新しいアプリIDを取得する時点は(まだ)わかりません。レビューのためにアップロードするとき、その前、または承認されたときですか?私は現在この問題に取り組んでいるので、すぐにこの答えに追加できるかもしれません。

編集:明示的なアプリIDは、テストしているソフトウェアにのみ影響し、基本的には、iTunes Connectとは何の関係もありません。つまり、アプリ内購入をテストする場合、実行中のソフトウェア(アプリ)には、アプリ固有の証明書に基づくプロビジョニングプロファイルが必要です。 iTunes Connectで何が起きるかはまったく関係ありません。

1
Dan Rosenstark