プッシュ通知の統合
Xamarin 用に Android、FireOS、iOS のプッシュ通知を設定する方法について説明します。
前提条件
この機能を使用するには、Xamarin プラットフォーム用のBraze SDK を統合する必要があります。
プッシュ通知の統合
tip:
Java と C# で名前空間がどのように変わるかは、GitHub のXample サンプルアプリをチェックしてください。
Xamarin 用にプッシュ通知を統合するには、ネイティブの Android プッシュ通知のステップを完了する必要があります。以下の手順はあくまで概要である。完全なチュートリアルについては、ネイティブ・プッシュ通知ガイドを参照のこと。
ステップ1:プロジェクトを更新する
- AndroidプロジェクトにFirebaseを追加する。
- Android プロジェクトの
build.gradle
に Cloud Messaging ライブラリを追加します。1
implementation "google.firebase:firebase-messaging:+"
ステップ2:JSON認証情報を作成する
- Google Cloud で、Firebase Cloud Messaging API を有効にします。
- [サービスアカウント] > [プロジェクト] > [サービスアカウントの作成] の順に選択し、サービスアカウント名、ID、説明を入力します。完了したら、Createを選択して続ける。
- [ロール] フィールドで、ロールのリストから [Firebase Cloud Messaging API 管理者] を見つけて選択します。
- [サービスアカウント] でプロジェクトを選択し、[アクション] > [キーの管理] > [キーの追加] > [新しいキーの作成] の順に選択します。[JSON] を選択し、[作成] を選択します。
ステップ3:JSON認証情報をアップロードする
- Braze で、[設定] > [アプリの設定] を選択します。Android アプリの [プッシュ通知設定] で [Firebase] を選択し、[JSON ファイルのアップロード] を選択して、先ほど生成した認証情報をアップロードします。完了したら、[保存] を選択します。
- Firebase Consoleにアクセスして、FCMトークンの自動登録を有効にする。プロジェクトを開き、[設定] > [プロジェクト設定] の順に選択します。[Cloud Messaging] を選択し、[Firebase Cloud Messaging API (V1)] で [送信者 ID] フィールドの数字をコピーします。
- Android Studio プロジェクトで、以下を
braze.xml
に追加します。
1
2
<bool translatable="false" name="com_braze_firebase_cloud_messaging_registration_enabled">true</bool>
<string translatable="false" name="com_braze_firebase_cloud_messaging_sender_id">FIREBASE_SENDER_ID</string>
important:
サイレントプッシュ通知を送信するたびにBrazeが不要なネットワークリクエストをトリガーするのを防ぐには、Application
クラスのonCreate()
メソッドで設定されている自動ネットワークリクエストをすべて削除する。詳細については、Android 開発者リファレンス:アプリケーションを参照してください。
ステップ1:初期設定を完了する
プッシュを使ったアプリケーションの設定や、認証情報をサーバーに保存する方法については、SWIFT の統合に関する説明を参照してください。詳細はiOS MAUIサンプル・アプリケーションを参照のこと。
ステップ2:プッシュ通知の許可をリクエストする
Xamarin SDKが自動プッシュ設定をサポートするようになった。Brazeインスタンス構成に以下のコードを追加して、プッシュ自動化とパーミッションを設定する:
1
2
configuration.Push.Automation = new BRZConfigurationPushAutomation(true);
configuration.Push.Automation.RequestAuthorizationAtLaunch = false;
詳細はiOS MAUIサンプル・アプリケーションを参照のこと。詳細については、Xamarin.iOS の拡張ユーザー通知に関する Xamarin ドキュメントを参照してください。
New Stuff!