Show Menu
主题×

使用JavaScript 2.x跟踪广告

以下说明为使用 2.x SDK 进行实施提供了指南。如果您实施的是 1.x 版本的 SDK,可以在此处下载 1.x 开发人员指南: 下载 SDK

广告跟踪常量

常量名称
描述  
AdBreakStart
用于跟踪 AdBreak 开始事件的常量
AdBreakComplete
用于跟踪 AdBreak 结束事件的常量
AdStart
用于跟踪广告开始事件的常量
AdComplete
用于跟踪广告结束事件的常量
AdSkip
用于跟踪广告跳过事件的常量

实施步骤

  1. 识别广告时间(包括前置广告)边界开始的时间,然后使用广告时间信息创建 AdBreakObject
    AdBreakObject 引用:
    变量名称
    描述
    必需
    name
    广告时间的名称,例如前置广告、中置广告或后置广告。
    position
    广告时间的位置编号,从 1 开始编号。
    startTime
    广告时间开始的播放头值。
    广告时间对象创建:
    var adBreakObject =  
      MediaHeartbeat.createAdBreakObject(<ADBREAK_NAME>,  
                                         <POSITION>,  
                                         <START_TIME>);
    
    
  2. MediaHeartbeat 实例中使用 AdBreakStart 调用 trackEvent() ,以开始跟踪广告时间:
    mediaHeartbeat.trackEvent(MediaHeartbeat.Event.AdBreakStart, adBreakObject);
    
    
  3. 识别广告的开始时间,然后使用广告信息创建 AdObject 实例。
    AdObject 引用:
    变量名称
    描述
    必需
    name
    广告的友好名称.
    adId
    广告的唯一标识符。
    position
    广告时间中广告的位置编号,从 1 开始编号。
    length
    广告长度
    广告对象创建:
    var adObject =  
      MediaHeartbeat.createAdObject(<AD_NAME>,  
                                    <AD_ID>,  
                                    <POSITION>,  
                                    <LENGTH>);
    
    
  4. (可选)通过上下文数据变量将标准和/或广告元数据附加到媒体跟踪会话。
    • 自定义广告元数据 - 对于自定义元数据,请为自定义数据变量创建变量对象,然后使用当前广告的数据进行填充:
      /* Set custom context data */
      var adCustomMetadata = {
          affiliate: "Sample affiliate",
          campaign: "Sample ad campaign",
          creative: "Sample creative"
      };
      
      
  5. MediaHeartbeat 实例中使用 AdStart 事件调用 trackEvent() ,以开始跟踪广告播放。
    在事件调用中添加对自定义元数据变量(或空对象)的引用,以将其作为第三个参数:
    _onAdStart = function() {
        this._mediaHeartbeat.trackEvent(MediaHeartbeat.Event.AdStart,  
                                        adObject,  
                                        adCustomMetadata);
    };
    
    
  6. 当广告播放到达广告结尾时,使用 AdComplete 事件调用 trackEvent()
    _onAdComplete = function() {
        this._mediaHeartbeat.trackEvent(MediaHeartbeat.Event.AdComplete);
    };
    
    
  7. 如果由于用户选择跳过广告而使广告播放未能完成,则跟踪 AdSkip 事件:
    _onAdSkip = function() {
        this._mediaHeartbeat.trackEvent(MediaHeartbeat.Event.AdSkip);
    };
    
    
  8. 如果同一个 AdBreak 中存在任何其他广告,请重复执行步骤 3 至 7。
  9. 当广告时间结束时,使用 AdBreakComplete 事件进行跟踪:
    _onAdBreakComplete = function() {
        this._mediaHeartbeat.trackEvent(MediaHeartbeat.Event.AdBreakComplete);
    };
    
    
有关更多信息,请参阅跟踪方案 包含前置广告的 VOD 播放