Show Menu
主題×

主要內容中具有搜尋的 VOD 播放

藍本

此案例包含在播放期間於主要內容中搜尋。
這是與 沒有廣告的 VOD 播放 案例相同的案例,只是一部分內容被刪除,並且搜尋是從主要內容中的某個點到另一個點間完成。
觸發
心率方法
網路呼叫
附註  
使用者點按播放
trackSessionStart
Analytics 內容開始、心率內容開始
Measurement Library 不知道有前段廣告,因此這些網路呼叫完全等同於 沒有廣告的 VOD 播放 案例。
內容播放的第一個時間格。
trackPlay
心率內容播放
當章節內容在主要內容之前播放時,Heartbeats 會在章節開始時啟動。
內容播放
內容心率
此網路呼叫完全等同於 沒有廣告的 VOD 播放 案例。
使用者在內容上開始搜尋作業
trackSeekStart
在搜尋完成前 (例如
trackSeekComplete
) 不會傳出任何心率。
搜尋作業完成
trackSeekComplete
因為搜尋已完成,即會開始傳出心率。提示: 在搜尋之後,播放點值應該呈現正確的新播放點。
內容已完成
trackComplete
心率內容完成
此網路呼叫完全等同於 沒有廣告的 VOD 播放 案例。
工作階段結束
trackSessionEnd
SessionEnd

程式碼範例

在此案例中,使用者在播放主要內容時進行搜尋。

Android

如要在 Android 中查看此案例,請設定下列程式碼:
// Set up mediaObject MediaObject mediaInfo = MediaHeartbeat.createMediaObject( Configuration.MEDIA_NAME, Configuration.MEDIA_ID, Configuration.MEDIA_LENGTH, MediaHeartbeat.StreamType.VOD ); HashMap<String, String> mediaMetadata = new HashMap<String, String>(); mediaMetadata.put(CUSTOM_KEY_1, CUSTOM_VAL_1); mediaMetadata.put(CUSTOM_KEY_2, CUSTOM_VAL_2); // 1. Call trackSessionStart() when the user clicks Play or if autoplay is used, // i.e., there is an intent to start playback. _mediaHeartbeat.trackSessionStart(mediaInfo, mediaMetadata); ...... ...... // 2. Call trackPlay() when the playback actually starts, i.e., whn the first frame // of the main content is rendered on the screen. _mediaHeartbeat.trackPlay(); ....... ....... // 3. Track the MediaHeartbeat.Event.SeekStart event when the user begins to seek. _mediaHeartbeat.trackEvent(MediaHeartbeat.Event.SeekStart, null, null); ....... ....... // 4. Track the MediaHeartbeat.Event.SeekComplete event when the user completes seeking _mediaHeartbeat.trackEvent(MediaHeartbeat.Event.SeekComplete, null, null); ....... ....... // 5. Call trackComplete() when the playback reaches the end, i.e., when the media // completes and finishes playing. _mediaHeartbeat.trackComplete(); ........ ........ // 6. Call trackSessionEnd() when the playback session is over. This method must be // called even if the user does not watch the media to completion. _mediaHeartbeat.trackSessionEnd(); ........ ........

iOS 應用程式

如要在 iOS 中查看此案例,請設定下列程式碼:
// Set up mediaObject ADBMediaObject *mediaObject = [ADBMediaHeartbeat createMediaObjectWithName:MEDIA_NAME o length:MEDIA_LENGTH streamType:ADBMediaHeartbeatStreamTypeVOD]; NSMutableDictionary *mediaContextData = [[NSMutableDictionary alloc] init]; [mediaContextData setObject:CUSTOM_VAL_1 forKey:CUSTOM_KEY_1]; [mediaContextData setObject:CUSTOM_VAL_2 forKey:CUSTOM_KEY_2]; // 1. Call trackSessionStart when the user clicks Play or if autoplay is used, // i.e., there is an intent to start playback. [_mediaHeartbeat trackSessionStart:mediaObject data:mediaContextData]; ....... ....... // 2. Call trackPlay when the playback actually starts, i.e., when the // first frame of the main content is rendered on the screen. [_mediaHeartbeat trackPlay]; ....... ....... // 3. Track the trackEvent:ADBMediaHeartbeatEventSeekStart event when the user // begins to seek out of the chapter with the intent to skip it. [_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventSeekStart mediaObject:nil data:nil]; ....... ....... // 4. Track the trackEvent:ADBMediaHeartbeatEventSeekComplete event when the // user seeks out of the chapter with the intent to skip it. [_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventSeekComplete mediaObject:nil data:nil]; ....... ....... // 5. Call trackComplete when the playback reaches the end, i.e., completes // and finishes playing. [_mediaHeartbeat trackComplete]; ....... ....... // 6. Call trackSessionEnd when the playback session is over. This method must // be called even if the user does not watch the media to completion. [_mediaHeartbeat trackSessionEnd]; ....... .......

JavaScript

若要檢視此案例,請輸入下列文字:
// Set up mediaObject var mediaInfo = MediaHeartbeat.createMediaObject( Configuration.MEDIA_NAME, Configuration.MEDIA_ID, Configuration.MEDIA_LENGTH, MediaHeartbeat.StreamType.VOD ); var mediaMetadata = { CUSTOM_KEY_1 : CUSTOM_VAL_1, CUSTOM_KEY_2 : CUSTOM_VAL_2, CUSTOM_KEY_3 : CUSTOM_VAL_3 }; // 1. Call trackSessionStart() when Play is clicked or if autoplay is used, // i.e., there's an intent to start playback. this._mediaHeartbeat.trackSessionStart(mediaInfo, mediaMetadata); ...... ...... // 2. Call trackPlay() when the playback actually starts, i.e., when the // first frame of the ad media is rendered on the screen. this._mediaHeartbeat.trackPlay(); ....... ....... // 3. Track the MediaHeartbeat.Event.SeekStart event when the user // begins to seek. this._mediaHeartbeat.trackEvent(MediaHeartbeat.Event.SeekStart); ....... ....... // 4. Track the MediaHeartbeat.Event.SeekComplete event when the user // completes seeking. this._mediaHeartbeat.trackEvent(MediaHeartbeat.Event.SeekComplete); ....... ....... // 5. Call trackComplete() when the playback reaches the end, i.e., when // playback completes and finishes playing. this._mediaHeartbeat.trackComplete(); ........ ........ // 6. Call trackSessionEnd() when the playback session is over. This method must be called // even if the user does not watch the media to completion. this._mediaHeartbeat.trackSessionEnd(); ........ ........