目次
- はじめに
- 実装方法
- 最後に
はじめに
以前こちらの記事でVisualizerを使ってiOS端末にPush通知を送信する方法について記載しました。
EngagementServiceを使いiOSデバイスでPush通知を送信 Part1
今回はAndroidでのPush送信の設定方法について紹介していきたいと思います!
実装方法
1.Firebaseでプロジェクトを作成
https://firebase.google.com/
Firebaseのページにアクセスして、Google Accountなどを利用してログインをしてください。
(Google Accountがない方は作成してください。)
ログインしたら右上の「コンソールへ移動」をクリックします。
コンソールが開いたら、「プロジェクトを追加」をクリックして、プロジェクトを作成しましょう。
作成画面が表示されるので、案内に沿って作成していきます。
作成が完了したらプロジェクトの画面に移動します。
これでFirebaseプロジェクトの作成は完了です!
2.Firebaseで設定ファイルのダウンロード
プロジェクトが作成できたら、Androidのマークをクリックしてアプリを追加します。
以下のような画面が表示されるので、案内に従ってアプリ名の設定を行い、
google-services.json
をダウンロードして、設定を完了してください。
このファイルは、後ほどVisualizerに設定します。
3.senderID、サーバーキーの取得
次に、Pushを送信するために必要なsenderID、サーバーキーを取得します。
Firebaseのプロジェクトの概要の歯車マーク=>プロジェクトを設定をクリックします。
CloudMessagingタブをクリックします。
以下のページで、サーバキーとsenderID、トークンの情報を取得することができます。
送信者ID(senderID)は、デバイスからFCMに登録する際に設定し、サーバーキーはEngagementServerに設定します。
4.EngagementServiceにサーバーキーを設定
Fabricを開き、EngagementタブでAndroidを開きます。
それぞれ以下のように設定してください。
項目 | 設定値 |
---|---|
Select Network | Firebase Cloud Messaging(FCM) |
FCM Authorization Key | Firebaseで取得したサーバーキー |
設定したら、SAVEをクリックして保存をします。
Publishタブに移動し公開したい環境を選択してPublishを行ってください。
この時、Exclusions in PublishでEngagement Services Configurationにチェックが入っていないことを確認して下さい。
(※チェックが入っている場合は、PublishにEngagementServiceの設定が含まれません。)
これでEngagementServiceにサーバーキーを設定することができました。
反映されているか確認するには、Fabricの左メニューEnvironmentをクリックして、
Publishした環境のEngagementServiceを選択し、Appsメニューを選択します。
先ほどPublishしたアプリのPlatformの箇所にAndroidのマークがついていればOKです。
Androidのマークがない場合はPublishが失敗していないかなど確認してみてくださいね
5.VisulizerでsenderIDを設定
次にVisualizerでsenderIDを設定します。
EngagementServiceを使いiOSデバイスでPush通知を送信
こちらで紹介しているように、**kony.push.register(config)**を使うことによって、
デバイスをEngagementServiceに登録するための処理となります。
Androidの場合は、configにsenderIDを設定する必要があるため、
以下のようにsenderIDを設定しましょう。
pushNotificationManager.pushRegister = function() {
kony.print("***** START PUSH REGISTER");
let config;
//#ifdef iphone
// Apple Notification Server
config = [0, 1, 2];
//#endif
//#ifdef android
config = {
senderid: "Firebaseで取得したsenderID"
};
//#endif
kony.push.register(config);
};
その他のコードについては、上述したリンクをご参照ください
6.設定ファイルのインポートとProjectSettingの設定
2でダウンロードしたファイルをResourceフォルダに設置します。
VisualizerのAssetタブを開き、androidの下に新しくfcm
フォルダを作成します。
作成できたら、2でダウンロードしたファイルをインポートしてください。
ファイルパス:ProjectLocation\resources\mobile\native\android\fcm
インポート例:
最後に、VisualizerでProjectSettingを開き、
Native=>Androidを選択します。
以下の項目をそれぞれこのように設定します。
項目 | 設定する内容 |
---|---|
Package Name | Firebaseで設定したパッケージ名 |
Push Notification | FCM |
Package Nameは、Firebaseでプロジェクトを開き、
歯車マーク=>プロジェクトの概要=>全般を選択し、下までスクロールするとパッケージ名の箇所に記載があります。
この名前と上記のPackage Nameが一致していないと、Push送信できないため、注意してください。
設定は以上となります!
これでAndroid端末にPush通知を送信するための設定が完了したので、
VisualizerでアプリをBuildしてPush通知が受信できるか確認してみてくださいね
まとめ
ProjectSettingでのパッケージ名をFirebaseのパッケージ名と合わせる点など、
つまづいたポイントだったので、困っている方がいたら参考にしてみてください
参考
https://basecamp.temenos.com/s/article-detail/a046A00000ATmiBQAT/google-fcm-push-notifications
https://docs.kony.com/konylibrary/visualizer/visualizer_user_guide/Content/Custom_FCM.htm