iOS での広告の追跡 track-ads-on-ios
以下の手順は、SDK 2.x を使用した実装についてのガイダンスです。
広告トラッキングの定数
ADBMediaHeartbeatEventAdBreakStart
ADBMediaHeartbeatEventAdBreakComplete
ADBMediaHeartbeatEventAdStart
ADBMediaHeartbeatEventAdComplete
ADBMediaHeartbeatEventAdSkip
実装手順
-
プリロールを含め、いつ広告ブレークの境界が開始するかを識別し、広告ブレーク情報を使用して
AdBreakObject
を作成します。AdBreakObject
リファレンス:table 0-row-3 1-row-3 2-row-3 3-row-3 3-align-center 7-align-center 11-align-center 15-align-center 変数名 説明 必須 name
プリロール、ミッドロール、ポストロールなど、広告ブレークの名前 ○ position
コンテンツ内の広告ブレークの位置番号(1 から始まる)。 ○ startTime
広告ブレーク開始時の再生ヘッド値 ○ 広告ブレークオブジェクトの作成:
code language-none id adBreakObject = [ADBMediaHeartbeat createAdBreakObjectWithName:[ADBREAK_NAME] position:[POSITION] startTime:[START_TIME]];
-
MediaHeartbeat
インスタンスのAdBreakStart
でtrackEvent()
を呼び出し、広告ブレークの追跡を開始します。code language-none - (void)onAdBreakStart:(NSNotification *)notification { [_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventAdBreakStart mediaObject:adBreakObject data:nil]; }
-
いつ広告が開始するかを識別し、広告情報を使用して
AdObject
インスタンスを作成します。AdObject
リファレンス:table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 3-align-center 7-align-center 11-align-center 15-align-center 19-align-center 変数名 説明 必須 name
広告のわかりやすい名前. ○ adId
広告の一意の ID。 ○ position
広告ブレーク内の広告の位置番号(1 から始まる)。 ○ length
広告の長さ ○ 広告オブジェクトの作成:
code language-none id adObject = [ADBMediaHeartbeat createAdObjectWithName:[AD_NAME] adId:[AD_ID] position:[POSITION] length:[LENGTH]];
-
オプションで、コンテキストデータ変数を使用して標準または広告メタデータをメディアトラッキングセッションにアタッチします。
-
カスタムの広告メタデータ - カスタムのメタデータの場合は、カスタムデータ変数の変数オブジェクトを作成し、現在の広告のデータを設定します。
code language-none NSMutableDictionary *adDictionary = [[NSMutableDictionary alloc] init]; [adDictionary setObject:@"Sample affiliate" forKey:@"affiliate"]; [adDictionary setObject:@"Sample campaign" forKey:@"campaign"]; [adDictionary setObject:@"Sample creative" forKey:@"creative"];
-
MediaHeartbeat
インスタンスのAdStart
イベントでtrackEvent()
を呼び出し、広告再生の追跡を開始します。カスタムメタデータ変数(または空のオブジェクト)への参照を、イベント呼び出しの 3 番目のパラメーターとして含めます。
code language-none - (void)onAdStart:(NSNotification *)notification { [_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventAdStart mediaObject:adObject data:adDictionary]; }
-
広告の再生が広告の終わりに到達したら、
AdComplete
イベントでtrackEvent()
を呼び出します。code language-none - (void)onAdComplete:(NSNotification *)notification { [_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventAdComplete mediaObject:nil data:nil]; }
-
ユーザーが広告のスキップを選択したので広告再生が完了しなかった場合は、
AdSkip
イベントを追跡します。code language-none - (void)onAdSkip:(NSNotification *)notification { [_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventAdSkip mediaObject:nil data:nil]; }
-
同じ
AdBreak
にその他の広告がある場合、手順 3 ~ 7 を繰り返します。 -
広告ブレークが完了したら、
AdBreakComplete
イベントを使用して追跡します。code language-none - (void)onAdBreakComplete:(NSNotification *)notification { [_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventAdBreakComplete mediaObject:nil data:nil]; }
詳しくは、追跡シナリオのプリロール広告のある VOD 再生を参照してください。