現在、TestFlightでアプリをテストしていますが、Firebaseで通知をテストするには実稼働APN証明書が必要です。
このビデオのすべての手順に従って、開発APN証明書を正常に構成しました: https://www.youtube.com/watch?v=LBw5tuTvKd4
また、Firebaseサポートガイドに続く手順を確認しました。このガイドが書かれてからApple Developerサイトが少し変更されていることに注意してください: https://firebase.google.com/docs/cloud-messaging/ios/certs# configure_an_app_id_for_Push_notifications
開発証明書と同じ方法を使用してdeveloper.Apple.comで本番APNs証明書を生成しましたが、.p12ファイルをFirebaseにアップロードしようとすると、次のエラーが表示されます。
「証明書環境が一致しませんでした。適切な開発または本番APNS証明書を取得したことを確認してください。」
実稼働APNS証明書から生成された.p12を間違いなくアップロードしていますが、実稼働証明書のために他に何かする必要がありますか?
解決しました。私が犯した間違いは、「証明書」部分ではなく、キーチェーンアクセスの証明書の「秘密鍵」部分をエクスポートしていたことです。リスト内の正しい行を使用して.p12を再エクスポートするとすぐに、機能しました。
以下のクレジットを説明する画像 iOS
正しい方法:
これを試してください
.csrファイルを作成し、developer.Apple.comから証明書をダウンロードします
秘密鍵と証明書の両方を選択を同時にエクスポートし、任意のパスフェーズで.p12にエクスポートします。
firebaseコンソールに.p12ファイルをアップロードします。
ありがとう
私は同じ問題に直面しており、上記のすべての解決策を試しましたが、キーチェーンアクセスから証明書を削除し、証明書を再度ダウンロードしてインストールし、エクスポートしてアップロードしようとするよりもうまくいきません。わたしにはできる。
ここで提案した解決策を試したところ、何も機能しません(これはおそらく正しいことをしていることを意味します)。この問題を解決するには、Chrome(アプリケーションは非常に長い時間実行されています)をアップロード用にSafari(この目的のためだけにアプリケーションを呼び出します)に置き換えました。
つまり、restart Chromeも機能する可能性があります。
ご参考までに。
私の場合、実動証明書をFirebaseにアップロードしたいのですが、すべてを試してみたところ、ついにiOS Developerで開発証明書を作成したことに気付きました...
場合によってはセマンティクスの問題がある可能性があるため、意味に注意してください。
firebaseコンソールに証明書をアップロードする必要がある場合、プレースホルダーテキストのある2つのボックスがあります。
1。開発APN証明書なし
2。実稼働APN証明書なし
私の場合、私は必須ではないボックス1に開発APN証明書をアップロードすることを理解していました。