以下の手順は、SDK 2.x を使用した実装についてのガイダンスです。
1.x バージョンの SDK を実装する場合は、1.x の開発ガイドをこちら(SDK のダウンロード)からダウンロードできます。
定数名 | 説明 |
---|---|
MediaHeartbeat.Event.AdBreakStart |
追跡する AdBreak Start イベントの定数 |
MediaHeartbeat.Event.AdBreakComplete |
追跡する AdBreak Complete イベントの定数 |
MediaHeartbeat.Event.AdStart |
追跡する Ad Start イベントの定数 |
MediaHeartbeat.Event.AdComplete |
追跡する Ad Complete イベントの定数 |
MediaHeartbeat.Event.AdSkip |
追跡する Ad Skip イベントの定数 |
プリロールを含め、いつ広告ブレークの境界が開始するかを識別し、広告ブレーク情報を使用して AdBreakObject
を作成します。
AdBreakObject
リファレンス:
変数名 | 説明 | 必須 |
---|---|---|
name |
プリロール、ミッドロール、ポストロールなど、広告ブレークの名前 | ○ |
position |
コンテンツ内の広告ブレークの位置番号(1 から始まる)。 | ○ |
startTime |
広告ブレーク開始時の再生ヘッド値 | ○ |
広告ブレークオブジェクトの作成:
MediaObject adBreakInfo =
MediaHeartbeat.createAdBreakObject(<ADBREAK_NAME>,
<POSITION>,
<START_TIME>);
MediaHeartbeat
インスタンスの AdBreakStart
で trackEvent()
を呼び出し、広告ブレークの追跡を開始します。
public void onAdBreakStart(Observable observable, Object data) {
_heartbeat.trackEvent(MediaHeartbeat.Event.AdBreakStart,
adBreakInfo,
null);
}
いつ広告が開始するかを識別し、広告情報を使用して AdObject
インスタンスを作成します。
AdObject
リファレンス:
変数名 | 説明 | 必須 |
---|---|---|
name |
広告のわかりやすい名前. | ○ |
adId |
広告の一意の ID。 | ○ |
position |
広告ブレーク内の広告の位置番号(1 から始まる)。 | ○ |
length |
広告の長さ | ○ |
広告オブジェクトの作成:
MediaObject adInfo =
MediaHeartbeat.createAdObject(<AD_NAME>
<AD_ID>,
<POSITION>,
<LENGTH>);
オプションで、コンテキストデータ変数を使用して標準または広告メタデータをメディアトラッキングセッションにアタッチします。
help/use-cases/track-ads/impl-std-ad-metadata/impl-std-ad-metadata-android.md
カスタムの広告メタデータ - カスタムのメタデータの場合は、カスタムデータ変数の変数オブジェクトを作成し、現在の広告のデータを設定します。
// Setting Ad Metadata
HashMap<String, String> adMetadata = new HashMap<String, String>();
adMetadata.put("affiliate", "Sample affiliate");
adMetadata.put("campaign", "Sample ad campaign");
MediaHeartbeat
インスタンスの AdStart
イベントで trackEvent()
を呼び出し、広告再生の追跡を開始します。
カスタムメタデータ変数(または空のオブジェクト)への参照を、イベント呼び出しの 3 番目のパラメーターとして含めます。
public void onAdStart(Observable observable, Object data) {
_heartbeat.trackEvent(MediaHeartbeat.Event.AdStart,
adInfo,
adMetadata);
}
広告の再生が広告の終わりに到達したら、AdComplete
イベントで trackEvent()
を呼び出します。
public void onAdComplete(Observable observable, Object data) {
_heartbeat.trackEvent(MediaHeartbeat.Event.AdComplete, null, null);
}
ユーザーが広告のスキップを選択したので広告再生が完了しなかった場合は、AdSkip
イベントを追跡します。
public void onAdSkip(Observable observable, Object data) {
_heartbeat.trackEvent(MediaHeartbeat.Event.AdSkip, null, null);
}
同じ AdBreak
にその他の広告がある場合、手順 3 ~ 7 を繰り返します。
広告ブレークが完了したら、AdBreakComplete
イベントを使用して追跡します。
public void onAdBreakComplete(Observable observable, Object data) {
_heartbeat.trackEvent(MediaHeartbeat.Event.AdBreakComplete, null, null);
}
詳しくは、追跡シナリオのプリロール広告のある VOD 再生を参照してください。