マルチプッシュ通知の連携
Live Operationのターゲティングプッシュ通知サービスは、他のプッシュ通知サービスと共に利用できるマルチプッシュ通知機能を提供しています。
以下のガイドを参考してマルチプッシュ通知機能を実装してください。
マルチプッシュ通知を連携する前に、ターゲティングプッシュ通知の連携を完了してください。
AndroidManifest.xmlの設定
プッシュ通知レシーバー登録順番の変更
ターゲティングプッシュ通知サービスを利用してマルチプッシュ通知を実装するためには、以下のサンプルの参考の上、
ターゲティングプッシュ通知のレシーバーを他サービスのレシーバーより先に登録してください。
<!-- Igaworks -->
<receiver android:name="com.igaworks.liveops.pushservice.LiveOpsGCMBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE"/>
<action android:name="com.google.android.c2dm.intent.REGISTRATION"/>
<category android:name="com.YOUR_PACKAGE_NAME.HERE"/>
</intent-filter>
</receiver>
<service android:enabled="true"
android:name="com.igaworks.liveops.pushservice.GCMIntentService"/>
<!-- your IGAWORKS KEYS here -->
<meta-data android:name="igaworks_app_key" android:value="igaworks_app_key"/>
<meta-data android:name="igaworks_hash_key" android:value="igaworks_hash_key"/>
<!-- Push Company 1 -->
<receiver android:name="push.company1.android.sample.Test1_GCMBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE"/>
<action android:name="com.google.android.c2dm.intent.REGISTRATION"/>
<category android:name=" com.YOUR_PACKAGE_NAME.HERE "/>
</intent-filter>
</receiver>
<!-- Push Company 2 -->
<receiver android:name="push.company2.android.sample.Test2_GCMBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE"/>
<action android:name="com.google.android.c2dm.intent.REGISTRATION"/>
<category android:name=" com.YOUR_PACKAGE_NAME.HERE "/>
</intent-filter>
</receiver>
Sender IDの登録
プッシュ通知の受信のため、Sender IDを登録します。ターゲティングプッシュ通知に他サービスのSender IDを登録する方法と、
ターゲティングプッシュ通知のSender IDを他サービスに登録する方法があります。
ターゲティングプッシュ通知に他サービスのSender IDを登録する場合
Live Operationのライブラリーを初期化する時、他プッシュ通知サービスのSender IDを共に登録します。
複数のSender IDを登録する時は、コンマ(,)で区分します。
IgawLiveOps.initialize(MainActivity.this, "000000000,111111111");
IgaworksUnityPluginAOS.LiveOps.initialize("000000000,111111111");
Registration IDの伝達
ターゲティングプッシュ通知に他サービスのSender IDを登録して利用する場合、Registration IDが渡される機能を提供します。
IgawLiveOps.setRegistrationIdEventListener(new RegistrationIdEventListener() {
@Override
public void onReceiveRegistrationId(String regId) {
Log.d("DEBUG", "onReceiveRegistrationId :: " + regId);
}
});
void Start(){
IgaworksUnityPluginAOS.LiveOps.setRegistrationIdEventListener();
IgaworksUnityPluginAOS.OnReceiveRegistrationId = mOnReceiveRegistrationId;
}
void mOnReceiveRegistrationId(string regId){
Debug.Log("ReceiveRegistrationId :::: Registration ID" + regId);
}
他サービスのシステムにターゲティングプッシュ通知のSender IDを登録する場合
以下のターゲティングプッシュ通知のSender IDを他サービスに登録します。
910677924034
起動
Live Operationのマルチプッシュ通知は以下のように起動します。
1. IGAWorksマルチプッシュ通知を受信した場合:
Live Operation SDKでプッシュ通知を受信・処理した後、他サービスのレシーバーに渡さない
2. 他サービスのプッシュ通知を受信した場合:
Live Operation SDKでプッシュ通知を受信して、既に設定した他サービスSender IDとともにAndroidManifest.xmlに登録した順にプッシュ通知レシーバーへ渡す
ご注意
- マルチプッシュ通知はAndroidのみ対応します。
- マルチプッシュ通知はIgawLiveOps_v1.1.4以上で対応します。
- 他サービスのレシーバーを先に登録した際、マルチプッシュ通知の機能が起動しない場合があります。
- マルチプッシュ通知を利用して渡したプッシュ通知に対して、他サービスの処理に関しては介入しません。