Skip to content

アプリ内メッセージ統合

この実装ガイドでは、アプリ内メッセージコードの考慮事項と、関連するコードスニペットについて説明します。サンプル統合コードが提供されていますが、トリガーメッセージを処理し、希望する UI 内で表示するためのロジックを追加する必要があります。

コードはアプリ固有であるため、ユースケースに関連しない場合は、列挙されたすべての状況に対応する必要はありません。たとえば、アプリ内メッセージの遅延表示を使用しない場合、そのロジックおよびエッジケースを実装する必要はありません。

SDK 要件

アプリ内メッセージは、サポートされている最小 SDK バージョンを実行中の Roku デバイスにのみ送信されます。

アプリ内メッセージの設定

アプリ内メッセージを処理するため、BrazeTask.BrazeInAppMessage でオブザーバーを追加できます。

1
m.BrazeTask.observeField("BrazeInAppMessage", "onInAppMessageReceived")

次に、ハンドラ内で、キャンペーンでトリガーされた最上位のアプリ内メッセージにアクセスできます。

1
2
3
4
sub onInAppMessageReceived()
  in_app_message = m.BrazeTask.BrazeInAppMessage
  ...
end sub

アプリ内メッセージのフィールド

以下は、アプリ内メッセージを処理するために必要なフィールドのリストです。

フィールド 説明
buttons ボタンのリスト (空のリストにすることもできます)。
click_action "URI" または "NONE"。このフィールドを使用して、URI リンクに対してアプリ内メッセージを開くか、クリックしたときにメッセージを閉じるかを指定します。ボタンがない場合、アプリ内メッセージが表示されているときにユーザーが [OK] をクリックすると、この動作が実行されます。
dismiss_type "AUTO_DISMISS" または "SWIPE"。このフィールドを使用して、アプリ内メッセージが自動的に閉じられるか、スワイプで消去する必要があるかを指定します。
display_delay アプリ内メッセージが表示されるまでの待機時間 (秒単位)。
duration dismiss_type"AUTO_DISMISS" に設定されている場合のメッセージの表示時間 (ミリ秒単位)
extras キーと値のペア。
header ヘッダーテキスト。
id インプレッションやクリックのロギングに使用される ID。
image_url アプリ内メッセージの画像 URL。
message メッセージ本文テキスト。
uri URI ユーザーは click_action に基づいて送信されます。click_action"URI" の場合、このフィールドを含める必要があります。

スタイル指定フィールド

ダッシュボードから使用するよう選択できるさまざまなスタイル指定フィールドもあります。

フィールド 説明
bg_color 背景色。
close_button_color [閉じる] ボタンの色。
frame_color 背景画面オーバーレイの色。
header_text_color ヘッダーテキストの色。
message_text_color メッセージテキストの色。
text_align 「START」、「CENTER」、または「END」。選択したテキストの配置。

また、アプリ内メッセージを実装し、Roku アプリケーション内で標準パレットを使用してそのスタイルを指定することもできます。

ボタンフィールド

フィールド 説明
click_action "URI" または "NONE"。このフィールドを使用して、URI リンクに対してアプリ内メッセージを開くか、クリックしたときにメッセージを閉じるかを指定します。
id ボタン自体の ID 値。
text ボタンに表示されるテキスト。
uri URI ユーザーは click_action に基づいて送信されます。click_action"URI" の場合、このフィールドを含める必要があります。

インタラクションの処理

キャンペーンの分析を処理するために特定の関数が呼び出されることを確認する必要があります。

メッセージが表示された場合

メッセージが表示または確認されたら、インプレッションをロギングします。

1
LogInAppMessageImpression(in_app_message.id, brazetask)
ユーザーがメッセージをクリックした場合

ユーザーがメッセージをクリックしたら、クリックをロギングし、in_app_message.click_action を処理します。

1
LogInAppMessageClick(in_app_message.id, brazetask)
ユーザーがボタンをクリックした場合

ユーザーがボタンをクリックしたら、ボタンクリックをロギングし、inappmessage.buttons[selected].click_action を処理します。

1
LogInAppMessageButtonClick(inappmessage.id, inappmessage.buttons[selected].id, brazetask)
アプリ内メッセージの処理後

アプリ内メッセージの処理後に、field: をクリアする必要があります。

1
m.BrazeTask.BrazeInAppMessage = invalid
「このページはどの程度役に立ちましたか?」
New Stuff!