VPAID 2 JavaScript 广告素材

IMA HTML5 SDK 支持 VPAID 2 JavaScript 广告素材。启用支持很简单,但您需要注意 VPAID 2 规范与 IMA SDK 支持 VPAID 2 的方式之间有两个区别。这些差异不会影响播放器或 SDK 实现代码,但对于 VPAID 2 JavaScript 广告素材制作者而言非常重要,因为在 IMA HTML5 SDK 呈现时,广告素材可能会出现错误或无法按预期呈现。

前提条件

  • 集成了 IMA HTML5 SDK 的 HTML5 视频播放器。如果您还没有账号,请查看我们的入门指南
  • 指向 VPAID 2 JavaScript 广告素材的 VAST 广告代码网址。

实用入门指南

启用 VPAID 2 支持

要启用 VPAID 2 JavaScript 支持,请在初始化 AdDisplayContainer 之前调用以下方法:

      google.ima.settings.setVpaidMode(google.ima.ImaSdkSettings.VpaidMode.ENABLED);
      ...
      var adDisplayContainer = new google.ima.AdDisplayContainer(adContainerElement);
      var adsLoader = new google.ima.AdsLoader(adDisplayContainer);
      ...

可用的 VPAID 模式如下所示:

  • ENABLED - 允许使用默认设置的 VPAID 广告。
  • INSECURE - 允许在非安全模式下投放 VPAID 广告。有关详情,请参见 iframe 安全性视频播放器代理元素
  • DISABLED - VPAID 广告无法播放。如果请求的广告返回 VPAID 广告素材,系统会抛出错误。
如需详细了解 VPAID 模式,请参阅 ImaSdkSettings.VpaidMode 的 API 文档。

支持 VPAID 2 的注意事项

iframe 安全

默认情况下,IMA SDK 会使用安全的 iframe,而非易用的 iframe(同一网域)或页内脚本来呈现 VPAID 2 JavaScript 广告素材。这意味着,如果广告素材预期访问父级页面的 DOM,就可能会导致错误。要改为在易用的 iframe 中呈现广告,您可以使用 ImaSdkSettings.setVpaidMode(...),如下所示:

adsLoader.getSettings().setVpaidMode(google.ima.ImaSdkSettings.VpaidMode.INSECURE);

视频播放器代理元素

为了确保安全性并保障移动功能正常发挥作用,在 ENABLED 模式下,IMA HTML5 SDK 不会向广告提供实际的视频元素,而是提供与一般视频元素的大部分功能相似的代理元素。对于仅调用支持的 API 方法的广告素材,广告素材呈现过程中不应有任何行为变化。在 VpaidMode.INSECURE 模式下,SDK 会提供视频播放器元素,而不是代理。

以下是视频代理元素上可用的方法、监听器和属性:

方法

  • addEventListener
  • canPlayType
  • load
  • play
  • pause
  • setattribute

addEventListener 的事件类型

  • abort
  • canplay
  • canplaythrough
  • click
  • durationchange
  • emptied
  • ended
  • error
  • loadeddata
  • loadedmetadata
  • loadstart
  • pause
  • play
  • playing
  • progress
  • ratechange
  • suspend
  • seeked
  • seeking
  • timeupdate
  • waiting

属性

  • currentTime
  • duration
  • ended
  • paused
  • playbackRate
  • src
  • type

FAQ

iOS SDK 或 Android SDK 是否支持 VPAID 2 JavaScript 广告素材?
IMA HTML5 SDK 是目前唯一支持 VPAID 2 JavaScript 广告素材的 IMA SDK 平台。
该操作是否会在 IMA HTML5 SDK 中启用 VPAID 广告素材?
可以,IMA HTML5 SDK 支持 VPAID 2 JavaScript 广告素材。