Firebase Cloud Messaging API への移行
Google の廃止予定の Cloud Messaging API から、完全にサポートされている Firebase Cloud Messaging (FCM) API への移行方法について説明します。詳細については、Google の Firebase に関する FAQ - 2023 年を参照してください。
Android のプッシュ統合を初めて設定する場合は、代わりに標準 Android プッシュ統合を参照してください。
レート制限
Firebase Cloud Messaging (FCM) API には、1分当たりに600,000リクエストというデフォルトのレート制限があります。この制限に達した場合、Brazeは数分後に自動的に再試行します。増加をリクエストするには、Firebaseサポートに連絡してください。
FCMへの移行
ステップ1:プロジェクトIDを確認してください
まず、Google Cloud を開きます。プロジェクトのホームページで、プロジェクトIDフィールドの番号を確認します。次に、これをFirebaseプロジェクトの番号と比較します。
次に、Firebase Console を開き、[設定] > [プロジェクト設定] を選択します。
「一般」タブで、「プロジェクトID」がGoogle Cloudプロジェクトに記載されているものと一致していることを確認します。
ステップ2:送信者 ID を確認する
まず、Braze を開き、[設定] > [アプリ設定] を選択します。
Android アプリの [プッシュ通知の設定] で、[Firebase Cloud Messaging の送信者 ID] フィールドの番号を確認します。次にこれを Firebase プロジェクトのものと比較します。
次に、Firebase Console を開き、[設定] > [プロジェクト設定] を選択します。
[Cloud Messaging] を選択します。[Cloud Messaging API (レガシー)] で、送信者 ID が Braze ダッシュボードに表示されているものと一致していることを確認します。
ステップ3:Firebase Cloud Messaging API を有効にする
Google Cloud で、Android アプリが使用しているプロジェクトを選択し、Firebase Cloud Messaging API を有効にします。
ステップ4: サービスアカウントを作成する
次に、新しいサービスアカウントを作成し、FCM トークンの登録時に Braze が許可された API 呼び出しを行えるようにします。Google Cloud で、[サービスアカウント] に移動し、プロジェクトを選択します。[サービスアカウント] ページで [サービスアカウントの作成] を選択します。
サービスアカウント名、ID、説明を入力して、[作成して続行] を選択します。
[ロール] フィールドで、ロールのリストから [Firebase Cloud Messaging API 管理者] を見つけて選択します。アクセスをより制限する場合は、cloudmessaging.messages.create
権限を持つカスタムロールを作成し、代わりにリストからそれを選択します。[完了] を選択します。
[Firebase Cloud Messaging 管理者] ではなく、[Firebase Cloud Messaging API 管理者] を選択してください。
ステップ5:権限を確認する(オプション)
サービスアカウントが持っている権限を確認するには、Google Cloud を開き、プロジェクトに移動して、[IAM] を選択します。プリンシパル別に表示 で、過剰な権限 を選択します。
これで、選択した役割に割り当てられている現在の権限を確認できます。
ステップ 6:JSON 認証情報を生成する
次に、FCM サービスアカウントの JSON 認証情報を生成します。Google Cloud IAM & Admin で、[サービスアカウント] に移動し、プロジェクトを選択します。先ほど作成した FCM サービスアカウントを見つけて、[アクション] > [キーの管理] を選択します。
[キーの追加] > [新しいキーを作成] を選択します。
新しいキーを作成しても、レガシーキーは削除されません。[認証情報を元に戻す] を選択して誤って新しいキーを削除した場合、Braze はバックアップとしてレガシーキーを使用します。
[JSON] を選択し、[作成] を選択します。FCM プロジェクト ID とは異なる Google Cloud のプロジェクト ID を使用してサービスアカウントを作成した場合は、JSON ファイルで project_id
に割り当てられた値を手動で更新する必要があります。
キーをどこにダウンロードしたかを覚えておいてください。次のステップで必要になります。
秘密キーが漏洩した場合は、セキュリティリスクが生じる可能性があります。JSON の認証情報は安全な場所に保存しておいてください。キーは Braze にアップロードした後で削除します。
ステップ 7: JSON の認証情報を Braze にアップロードする
Braze で、[設定] > [アプリの設定] を選択します。
[プッシュ通知の設定] で [JSON ファイルのアップロード] を選択し、先ほど生成したファイルを選択します。完了したら、[保存] を選択します。
秘密キーが漏洩した場合は、セキュリティリスクが生じる可能性があります。キーが Braze にアップロードされたので、先に生成したファイルをコンピューターから削除します。
ステップ 8新しい資格情報をテストする(オプション)
認証情報を Braze にアップロードするとすぐに、新しい認証情報を使用してプッシュ通知の送信を始めることができます。新しい認証情報をテストするには、実際のまたはテストのプッシュ通知を FCM または Braze を使用してアプリに送信します。プッシュ通知が通れば、すべてが正常に動作しています。それがない場合:
- 送信者 ID を確認します
- 自分の権限を確認します
- メッセージアクティビティログでプッシュ通知エラーを確認する
お困りの場合は、資格情報のリセットをご覧ください。
認証情報を元に戻す
いつでも、新しい認証情報を削除し、レガシー認証情報を復元できます。認証情報が復元されるとすぐに、代わりに新しい認証情報を使用してプッシュ通知の送信を始めることができます。
Braze で、[設定] > [アプリの設定] を選択します。プッシュ通知設定で、資格情報を元に戻すを選択します。
新しい認証情報を削除すると、後で復元することはできません。新しい認証情報を生成し、もう一度それらを Braze にアップロードする必要があります。
よくある質問 (FAQ)
新しい資格情報が機能しているかどうかはどうすればわかりますか?
新しい認証情報は、Brazeにアップロードするとすぐに機能し始めます。それらをテストするには、テスト資格情報を選択します。エラーが発生した場合は、いつでも資格情報を元に戻すことができます。
未使用のアプリや開発中のアプリのためにFCMに移行する必要がありますか?
いいえ。ただし、未使用のアプリと開発アプリには、移行を求める警告メッセージが引き続き表示されます。このメッセージを削除するには、新しい認証情報をアップロードするか、それらのアプリをワークスペースから削除します。これらのアプリを削除することを選択した場合、誰かが使用している可能性があるため、最初にチームに確認してください。
エラーメッセージはどこで確認できますか?
メッセージアクティビティログでプッシュ通知エラーを確認できます。
移行する前に、アプリやSDKを更新する必要がありますか?
いいえ。新しい資格情報をBrazeにアップロードするだけで済みます。
古いレガシー認証情報を先に削除する必要がありますか?
いいえ。新しい認証情報を削除する必要がある場合は、レガシー認証情報を代わりに使用できます。
移行後、なぜBrazeに警告メッセージがまだ表示されるのですか?
移行が必要な Android アプリがワークスペースに少なくとも1つある場合は、この警告メッセージが引き続き表示されます。必ずすべてのAndroidアプリをGoogleの完全にサポートされているFCM APIに移行してください。
移行後、プッシュ通知を再送信するまでどのくらいかかりますか?
移行後、すぐに新しい認証情報を使用して、プッシュ通知の送信を開始できます。
FCMプロジェクトとは異なるプロジェクトを使用してサービスアカウントを作成した場合はどうなりますか?
FCM プロジェクト ID とは異なる Google Cloud のプロジェクト ID を使用してサービスアカウントを作成した場合は、新しいアカウントを作成した後に、JSON ファイルで project_id
に割り当てられた値を手動で更新する必要があります。