Firebase を接続すると、SiteTo.App アプリが Android と iOS でプッシュ通知を受信できるようになります。また、加入しているすべてのデバイスに 1 つのブロードキャストを送信するための安全なサーバー資格情報も SiteTo.App に提供します。
始める前に
必要なものは次のとおりです。
- を作成または管理する権限を持つ Google アカウント Firebaseプロジェクト
- SiteTo.App アプリで使用される Android パッケージ名と iOS バンドル ID
- iOS 通知を設定している場合は、Apple Developer Program メンバーシップ
- アプリのセットアップ場所 SiteTo.App
Firebase と SiteTo.App でまったく同じパッケージ名またはバンドル ID を使用します。どちらの識別子も大文字と小文字が区別され、プラットフォーム アプリの登録後は Firebase で変更できません。
SiteTo.App の 3 つの資格情報を理解する
SiteTo.App's 接続 → Firebase 画面には 3 つのアップロード フィールドがあります。
- Androidの設定 —
google-services.json登録済みの Firebase Android アプリのファイル - iOS設定 — Apple Push Notice サービスの資格情報
.p8または.p12形式 - Firebase Admin SDK キー — SiteTo.App のサーバーがブロードキャストを送信するために使用するプライベート サービス アカウント JSON
2 つの JSON ファイルには互換性がありません。 google-services.json Android アプリを構成します。 Admin SDK JSON は信頼できるサーバーの操作を承認するため、非公開のままにする必要があります。
iOS の場合、Firebase はまた、 GoogleService-Info.plist アプリを登録するとき。そのファイルをダウンロードして、iOS プロジェクト アセットとともに保存します。現在の SiteTo.App Firebase 接続画面では、plist ではなく、APN 認証情報をアップロードするように求められます。
1. Firebase プロジェクトを作成または選択します
- を開きます Firebaseコンソール そしてサインインします。
- このアプリの既存のプロジェクトを選択するか、 プロジェクトを作成する.
- プロンプトに従ってください。 Google Analytics はプッシュ通知設定のオプションです。
- から プロジェクト概要、 選ぶ アプリを追加 Android と iOS を登録する準備ができたら。
同じアプリの両方のプラットフォーム バージョンに 1 つの Firebase プロジェクトを使用します。これにより、クラウド メッセージングの構成とサーバーの資格情報が一緒に保持されます。
2. Androidアプリを登録する
- で プロジェクト概要、Android アイコンを選択するか、 アプリを追加 → Android.
- SiteTo.App アプリで使用される正確な Android パッケージ名を入力します (例:
com.yourcompany.yourapp. - アプリを認識しやすくするために、オプションのニックネームを追加します。
- 選択 アプリを登録する.
- 選択 google-services.json をダウンロード 元のファイル名を保持します。
このファイルは後で再度ダウンロードできます。 プロジェクト設定 → 一般 → アプリ。ブラウザが次のようなテキストを追加する場合、 (1) ファイル名を変更したら、元の名前に戻します google-services.json SiteTo.App にアップロードする前に。
3.iOSアプリを登録する
- に戻る プロジェクト概要 そして選択してください アプリを追加 → iOS+.
- SiteTo.App iOS アプリで使用される正確なバンドル ID を入力します。
- オプションでニックネームを追加します。アプリがまだ公開されていない場合は、App Store ID を後で追加できます。
- 選択 アプリを登録する.
- ダウンロード
GoogleService-Info.plistそれをアプリの iOS プロジェクト アセットと一緒に保持します。
バンドル ID は大文字と小文字が区別され、登録後にこの Firebase アプリに対して変更することはできません。 SiteTo.App と一致しない場合は、間違った Firebase アプリ登録を削除し、正しい ID を持つ新しい Firebase アプリ登録を追加します。
4. iOS の APN 認証情報を作成する
Android のセットアップでは、このセクションを省略できます。 iOS の場合、Firebase Cloud Messaging には、Apple のプッシュ通知サービスを通じて通知を配信するための権限が必要です。
- にサインインします アップル開発者 そして開く 証明書、識別子、プロファイル.
- 選択 キー、追加ボタン (
+) 新しいキーを登録します。 - キーに次のような認識可能な名前を付けます。 SiteTo.App プッシュ通知.
- 有効にする Apple プッシュ通知サービス (APN) そして選択してください 設定する Apple がその環境または範囲を要求した場合。
- 選択 続く、設定を確認し、選択します 登録する.
- ダウンロード
.p8キーを付けて安全に保管してください。 - それをコピーする キーID そしてあなたのApple開発者 チームID.
Apple は通常、 .p8 秘密キーは一度だけダウンロードされます。ファイルを紛失した場合は、ファイルを再構築するのではなく、代わりのファイルを作成してください。
5. APN 認証情報を Firebase にアップロードします
- Firebase コンソールに戻り、プロジェクトを開きます。
- 開ける プロジェクト設定を選択し、 クラウドメッセージング.
- 以下で iOS アプリを見つけます Apple アプリの設定.
- 下 APNs認証キー、選択します アップロード.
- を選択してください
.p8ファイルを保存し、記録したキー ID とチーム ID を入力し、アップロードを完了します。
トークン キーの代わりに APNs 証明書を使用する場合は、パスワードで保護された証明書としてエクスポートします。 .p12 ファイル。 SiteTo.App は受け入れます .p8 そして .p12、しかし、 .p8 キーは毎年有効期限が切れないため、通常は管理が容易です。
6. Firebase Admin SDK キーを生成する
このキーにより、SiteTo.App のサーバーは通知ブロードキャストを送信できるようになります。 Android アプリと iOS アプリが含まれているのと同じ Firebase プロジェクトから生成します。
- Firebase コンソールで開きます プロジェクト設定.
- 選択 サービスアカウント.
- で Firebase 管理 SDK セクション、選択 新しい秘密鍵を生成する.
- 選択して確定します キーの生成.
- ダウンロードした JSON ファイルをプライベートな場所に保存します。
この JSON はプライベート サーバーの資格情報です。混同しないでください google-services.json、モバイル アプリに配置するか、リポジトリにコミットするか、電子メールやチャットで共有します。
7. SiteTo.App で Firebase を接続する
- にサインインします SiteTo.App.
- 設定したいアプリを開きます。
- アプリエディターで開きます 接続する そして選択してください ファイアベース.
- 下 Androidの設定、 アップロード
google-services.jsonステップ2から。 - 下 iOS設定をアップロードします。
.p8または.p12ステップ 4 の APN 認証情報。 - 下 Firebase Admin SDK キー、ステップ 6 のサービス アカウント JSON をアップロードします。
- 選択 設定を保存する.
各行には、アップロードされたファイル名または 設定済み。実稼働ビルドを開始する前に、3 つの認証情報がすべて同じアプリ、Firebase プロジェクト、Apple 開発者チームに属していることを確認してください。
次に何が起こるか
SiteTo.App は、サーバー上に Admin SDK 認証情報を保持し、それを使用して Firebase Cloud Messaging 経由でブロードキャスト メッセージを送信します。インストールされた Android アプリと iOS アプリは共有トピックをサブスクライブするため、1 回の送信で両方のプラットフォームに到達できます。
Firebase に接続しても、通知はすぐには送信されません。アプリのセットアップとビルドを完了し、新しいビルドを実デバイスにインストールし、プロンプトが表示されたら通知権限を付与して、テスト ブロードキャストを送信します。
トラブルシューティング
Android デバイスが通知を受信しない
それを確認してください google-services.json これは、SiteTo.App と同じパッケージ名を持つ Android アプリ登録から取得されたものです。別の Firebase プロジェクトまたは別のビルド バリアントからのファイルは、アプリに間違った送信者をポイントさせます。
iOS デバイスが通知を受信しない
バンドル ID が正確に一致していることを確認します。APN 認証情報が以下に表示されます。 プロジェクト設定 → クラウドメッセージング、そのキー ID とチーム ID は正しいです。物理的な Apple デバイスでテストし、プロンプトが表示されたら通知を許可します。
SiteTo.App で Admin SDK ファイルが無効であると言われる
以下で生成されたサービス アカウント JSON をアップロードします。 プロジェクト設定 → サービスアカウント。アンドロイド google-services.json ファイルも有効な JSON ですが、Admin SDK 認証情報ではありません。
ファイルはアップロードされますが、送信に失敗します
Admin SDK キーがまだアクティブであり、モバイル構成と同じ Firebase プロジェクトに属していることを確認します。キーが取り消されているか公開されている場合は、代替キーを生成し、SiteTo.App にアップロードします。
あなたはアップルを失いました .p8 鍵
Apple は 2 回目のダウンロードを提供していません。新しい APNs キーを作成して Firebase にアップロードし、SiteTo.App 内の iOS 構成ファイルを置き換えます。
認証情報を安全に保管する
- Admin SDK JSON と APN を扱う
.p8または.p12パスワードのようなファイル。 - プライベート資格情報をパスワードまたはシークレット マネージャーに保存します。
- Admin SDK JSON をモバイル アプリやパブリック リポジトリに配置しないでください。
- SiteTo.App を個別にローテーションできるように、SiteTo.App に専用のサービス アカウント キーを使用します。
- 公開された可能性のある秘密キーを取り消して置き換えます。
最新のプラットフォームの手順については、Firebase の公式ガイドを参照してください。 Android アプリを追加する, Apple アプリを追加する, APNs認証キーのアップロード、 そして Admin SDK 秘密キーの生成.
このガイドのコンソールのスクリーンショットは、 Evlop Android Firebase, Evlop iOS Firebase, エヴロップ Apple APN、 そして Evlop 管理 SDK ビジュアルリファレンスとして提供される記事。 Firebase と Apple は、時間の経過とともにラベルやページ レイアウトを更新する場合があります。





