Live Operation : ポップアップメッセージ
Live Operationのポップアップメッセージ機能は、ユーザーに公表するお知らせや情報などを、
ポップアップ型のメッセージ画面を利用して表示するサービスです。
ポップアップメッセージを利用して、実施しているイベントや新規機能のリリースなどの案内を行うことができます。
ご注意
- ライブオペレーションのAdd-Onを連携する前に、必ずIGAWorks基本連携を完了してください。 「IGAW基本連携 : Android」
- ライブオペレーションの連携のために、IgawLiveOps~*.jar ファイルをAndroidのプロジェクトに追加してください。 「SDKのインストール : Android」
ポップアップ初期化 API
ポップアップメッセージサービスを利用するために、以下のステップに沿い初期化を完了します。
以下の初期化APIは、アプリ起動時に呼び出されることをおすすめします。
ユーザー識別値の入力
ユーザー識別値は、Live Opeartionでユーザーを判別するために利用する情報です。
ご注意
- 1名のユーザーにつき1つの固有な識別値を持つ必要がございます。可変値を利用しないでください。
- 個人情報(メールアドレス、名前、電話番号、識別できるユーザーIDなど)を含めてはいけません。
- 日本語、特殊文字、空白などが含まれている場合、必ずURL encording処理を行ってから利用してください。
- requestPopupResources APIが呼び出される前に設定してください。
上記の注意事項のご確認の上、ユーザー識別値を入力します。
IgawCommon.setUserId(getApplicationContext(),"user10001");
IgawCommon.setUserId(getApplicationContext(),"user10001");
ポップアップデータのロード
requestPopupResources APIを呼び出し、Live Operation管理画面で設定したポップアップのデータをロードします。
データロードの前に、ユーザー識別値の設置を完了してください。
ご注意
- ユーザー識別値が入力されていない場合、ポップアップのデータのロードができません。
- データのロードが出来ない場合、管理画面上で新しいメッセージを追加したとしてもSDKでは確認できなくなります。
上記の注意事項のご確認の上、データをロードします。
//ポップアップのデータロード
IgawLiveOps.requestPopupResource(mainContext, new LiveOpsPopupResourceEventListener() {
@Override
public void onReceiveResource(boolean isReceive) {
Log.d("liveops", "isReceivePopupResource? :: " + isReceive);
}
});
ポップアップの表示API
showPopup APIを呼び出し、ポップアップを表示したい地点でポップアップ型のお知らせを表示します。
ポップアップ上で表現される内容は、ポップアップ管理画面で設定した数値である必要があります。
以下の例は、 showPopupNotiBtnをクリックした際、ポップアップを表示することを想定して作成しました。
Button showPopupNotiBtn;
showPopupNotiBtn = (Button)findViewById(R.id.showPopupNotiBtn);
showPopupNotiBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//ポップアップを表示します。
//showPopup(Context context, String popup_spacekey, LiveOpsDeepLinkEventListener listener);
IgawLiveOps.showPopUp(MainActivity.this, "ポップアップスペースキー", null);
}
});
+ ポップアップスペースキーは、「Live Operation > ポップアップメッセージ > メッセージ登録 > ポップアップスペースの追加」より発行してください。
+ LiveOpsDeepLinkEventListener は、ポップアップメッセージでディープリンク機能を利用する際に利用します。
ポップアップのディープリンク
ポップアップのディープリンク機能を利用して、ポップアップを通じた様々なアクションの起動を処理することができます。
Button showPopupNotiBtn;
showPopupNotiBtn = (Button)findViewById(R.id.showPopupNotiBtn);
showPopupNotiBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
IgawLiveOps.showPopUp(mainContext, "ポップアップスペースキー", new LiveOpsDeepLinkEventListener() {
@Override
public void onReceiveDeeplinkData(String deepLinkDataString) {
Log.d("liveops", "LiveOpsPopUp DeepLinkData :::: " + deepLinkDataString);
//ディープリンクデータを利用して、追加アクションを起動するように実装します。
}
});
}
});
+ ポップアップスペースキーは、「Live Operation > ポップアップメッセージ > メッセージ登録 > ポップアップスペースの追加」より発行してください。
+ ディープリンクは、「Live Operation > 設定 > プッシュ通知・ポップアップメッセージ設定 > ディープリンク」より登録することができます。
+ ディープリンクは、Jsonタイプを対応しています。
ポップアップメッセージのユーザーターゲティング
ユーザーグループを設定して、メッセージの表示対象を直接選ぶことができます。
ユーザーグループを設定するためのデータは直接設定することができます。
ターゲティングデータの設定
ターゲティングしたユーザーのみメッセージを表示するため、カスタムユーザーデータを設定することができます。
設定したカスタムユーザーデータは、「Live Operation > 設定 > ユーザーブラウザの設定」より確認することができます。
以下の例は、課金回数をカスタムデータとして取得する場合です。
//IgawLiveOps.setTargetingData(Context applicationContext, final String customUserDataKey, final Object customUserData);
IgawLiveOps.setTargetingData(MainActivity.this, "purchaseCount", purchaseCount);
+ customUserData : ターゲティングのためのユーザーデータを入力します。bool, int, long, float, Stringを対応します。
+ customUserDataKey : ユーザーカスタムデータキーを設定します。
ターゲティングデータの同期化
resume APIを呼び出して設定したターゲティングデータを、Live Operationサーバーと同期化します。
アクティビティの onResume()に、以下のように追加します。
@Override
protected void onResume() {
super.onResume();
IgawLiveOps.resume(MainActivity.this);
//… 以下省略
}
ポップアップメッセージ:追加オプション
ポップアップイベントリスナー
ポップアップで発生するクリックイベントに対するリスナーを提供します。
- onCancelPopupBtnClick : ポップアップを閉じるイベント
- onPopupClick : ポップアップをクリックしたイベント
setLiveOpsPopupEventListener apiを利用してイベントリスナーを登録・実装します。
IgawLiveOps.setLiveOpsPopupEventListener(new LiveOpsPopupEventListener() {
@Override
public void onCancelPopupBtnClick() {
// ポップアップの「閉じる」ボタンをクリック
}
@Override
public void onPopupClick() {
// ポップアップをクリックするイベント
}
});
ポップアップの強制終了
ユーザーのクリック無しで、APIを利用して動的にポップアップを終了処理することができます。
表示中のポップアップを終了
destroyPopup api を呼び出して、現在表示されている最上位のポップアップを終了処理します。
IgawLiveOps.destroyPopup();
全体のポップアップを終了
destroyAllPopups apiを呼び出して、現在表示されている最上位のポップアップを含め、待機中のポップアップを全て終了処理します。
IgawLiveOps.destroyAllPopups();