私はIonic 3プロジェクトに取り組んでいますが、今は通知の設定とテストに慣れています。以前のネイティブiOS開発経験はありませんでした。そのため、すべての適切な証明書、プロビジョニングプロファイル、およびその他の設定が正しく行われる方法について、いくつかのガイドに従ってきました。アプリケーションIDとバンドルID:プロビジョニングプロファイルの問題
私はXcodeに追加したApple開発者アカウントを持っており、Xcode(バージョン8.3.3)が自動的に署名を処理するようになっています。
私はMixpanel統合の一環として通知を実装していますので、このガイドに従っています:https://mixpanel.com/help/reference/ios-push-notifications。このガイドはかなり完成しました。アプリIDの作成、プッシュの追加、必要な証明書に署名した&の作成、プロビジョニングプロファイルの作成、そして最後にそれらをMixpanelにアップロードするまで、ユーザーは完全に完了しました。プロセス全体がうまくいった。
プッシュ通知を試してみるためにデバイスを接続したとき、私はXcodeでプッシュ通知機能を追加していないのでビルドに失敗したので、私はそうしました。私のprovingioningプロファイルにその機能が含まれていないというコード署名設定でエラーが発生しました。奇妙なのは、アップルデベロッパーサイトの自分のアプリケーションIDの詳細で、プッシュ通知が開発用に有効になっていることがわかっているからです。
詳細を確認すると、私のApp IDバンドルID(Apple Devサイトの)とXcodeのバンドルIDが一致しないことが問題だと思います。
<team_ID>.com.<domain>.app
しかし、Xcodeで、私のバンドル識別子は次のとおりです:私のアプリIDのバンドル識別子がある私はアプリケーションIDを作成した時点で
com.<domain>.app
、私は<team_ID>
プレフィックスがバンドル識別子で必要であったと思いましたApp IDの設定 - しかし、私はそれが正しいとは思わない。私は、App ID情報で別々に接頭辞を参照してください。
は行うには間違ったこと、このましたか? Xcode(com.<domain>.app
)のバンドルIDが許可されていないため、私が混乱してチームIDを自分のApp IDバンドルIDに追加した理由がありました。
を私は、このバンドル識別子とAppleデベロッパプロファイルには、他のアプリのIDを持っていないclear-であるために:アプリケーションIDを作成するときに、それを使用しようとしたときに私が得たエラー。
この識別子は、今日のXcodeで同じ署名IDで使用していたため、利用可能にする必要があります。なぜそれを使ってアプリケーションIDを作成することが許されないのでしょうか?バンドルIDとXcodeの両方で同じでなければならないのはなぜですか?
最終的な紛らわしい点は、Xcodeのバンドル識別子を自分のアプリケーションIDと同じにすることにしました(一度一致すれば、建物が機能することを確認することです)。私がそれをした後、Xcodeは新しいバンドルIDを受け入れたようですが、違うビルドエラーが発生しました。私がサインインIDを変更した場合、署名設定に表示されるエラーは意味をなさないちょうどXcodeで上記の1ではありません。
具体的には、なぜエラーにバンドル識別子は、画像の上部にある設定で設定されているものと一致しないのですか?私はXcodeを再起動しようとしましたが、これはまだ発生します。この時点で、プッシュ機能を削除すればXcodeでビルドすることはできません。グーグルではあまり盛り上がっていない不思議なApple Mach-O Linker (ID) error
が表示されます。
作成できない理由は、他のアップルの開発者アカウントが既に登録されていて、comを使用しているためです。 .app app ID。開発者アカウントが登録されてそのアプリIDを使用すると、アカウントに追加することはできません。自動コード署名を使用していますが、最初は別の開発者アカウントでサインインした可能性があります。もしそうなら、Xcodeはその他のアカウントでバンドルIDを作成/予約しているかもしれません。私はそれが開発者アカウントに登録されると120日間予約されていると思います。 –
wottle
チームアカウントと個人用の無料アカウントをお持ちですか?これで私はそれを見ています。あなたの無料の開発者アカウント(プッシュ通知では動作しません)にバンドルIDが登録されているようですが、おそらくバンドルIDがないチームアカウントの開発者です(あなたの個人的なアカウントは、チームを変更するときに取ったいくつかのアクションを通してそれを引き継いだ)。あなたのチームを有料のデベロッパーアカウントに変更し、バンドルIDを何か新しいものに変更すると、うまくいくでしょう。 – wottle