查看 SDK 支持和兼容性

本页提供有关 IMA DAI 对浏览器、视频格式和平台的支持和兼容性的一般信息。

支持的视频格式和浏览器

HTML5 仍是一项新兴且不断发展的标准。因此,不同浏览器对各种功能的支持程度各不相同,并且没有一种默认视频格式可供所有主流浏览器使用。大多数浏览器中使用的三种主要视频格式是 H.264、HLS 和 Dash。

VAST 事件兼容性

此部分列出了根据 VAST 响应中返回的信息自动向服务器报告的 VAST 事件。

完全支持

completecreativeViewfirstQuartileimpressionmidpointpauseresumerewind(在向后方向进行任何重大搜索时触发)、startthirdQuartile

部分受支持

  • click

    Click 事件仅针对视频广告发送。 在 Android、iOS 或桌面设备上的原生全屏播放器中,无法捕获点击,但当视频关闭时,网页内点击跟踪元素仍可捕获点击。不过,如果视频元素在 iPad 上使用原生控件,则无法捕获点击。

  • fullscreen

    IMA 支持模拟全屏模式,在这种模式下,视频会占满整个浏览器窗口。 当视频的 offsetWidthoffsetHeight 至少与文档正文的大小相同时,IMA 会认为视频处于全屏模式。 所有浏览器都支持此模式。

    在 iPhone 和 3.0 之前的 Android 平台上,视频始终以全屏模式播放。

  • muteunmute

    iOS 和 Android 仅具有对音量的原生控制。因此,IMA 无法确定音量或静音状态,也不会收到 SDK 的更改通知。以下是支持和不支持 muteunmute 的浏览器版本列表:

    • 支持:Firefox 3.5+、Chrome 8+、Safari 4+
    • 不支持:iOS、Android

如需详细了解 VAST 广告投放,请参阅 IAB 指南

重新观看广告插播时的广告事件

IMA 在重新观看广告时不会触发广告事件,原因如下:

  • 事件网址应仅触发一次,否则可能会被视为垃圾行为。
  • 这样一来,用户就可以在已观看的广告插播时间点前后进行搜索,从而获得更好的搜索体验。

重新观看广告插播时,系统只会触发以下事件:

  • AD_PERIOD_STARTED
  • AD_PERIOD_ENDED

支持的视频播放器平台

Google IMA SDK 支持以下平台:

平台 版本
HTML5 桌面设备:Chrome、Firefox、Safari、Edge、Opera
移动设备:Chrome/Android 浏览器(适用于手机和平板电脑的 Android)、Safari 和 Chrome (iOS)
iOS iOS 10.0 及更高版本
Android Android 4.4 及更高版本
Google Cast 所有投放设备
tvOS tvOS 14+
Roku 所有仍在接收 Roku 软件更新的设备

视频流格式支持

IMA 在其所有 SDK 中都支持 HLS 和 DASH。如需了解特定 SDK 平台的支持情况,请参阅此表。为了正常播放流,您的视频播放器需要支持所使用的流类型。

IMA SDK 平台 HLS DASH
HTML5 对勾标记 对勾标记
iOS 对勾标记 Red-X
Android 对勾标记 对勾标记
Google Cast 对勾标记 对勾标记
tvOS 对勾标记 Red-X
Roku 对勾标记 对勾标记

视频功能和 SDK 版本

如需详细了解以下功能,请参阅视频广告概览

IAB 视频广告套件 支持
VAST 4 警告 1
VAST 3 警告 2
VAST 2 对勾标记
VPAID 2 Red-X
VMAP 1.0.1 警告 3
Ad Manager 视频功能 支持
线性广告 对勾标记
非线性广告(重叠式广告) Red-X
随播广告 警告 4
VAST 3 备用随播广告资源 Red-X
Active View 可见率 对勾标记
VAST 重定向 对勾标记
包含展示广告请求的随播广告回填 Red-X
Google 发布商代码 (GPT) 兼容性 Red-X
内容感知 Red-X
广告规则 对勾标记
广告连播 对勾标记
导视广告 对勾标记
报告多事件跟踪 (MET) 数据 对勾标记
可跳过(预订型 / 非 TrueView 广告) 警告 5
AdSense 视频广告功能 7 支持
TrueView InStream 警告 6
插播可选广告 对勾标记
标准插播广告 对勾标记
全槽 Red-X
随播广告 警告 4
随播回填 Red-X
叠加层 Red-X
Ad Manager Ad Exchange 功能 支持
TrueView InStream 警告 6
插播可选广告 对勾标记
标准插播广告 对勾标记
全槽 Red-X
随播广告 警告 4
随播回填 Red-X
叠加层 Red-X
Active View 可见率 对勾标记
为什么显示该广告? 警告 8

1Google Ad Manager 支持的 VAST 4 功能中,IMA 支持以下功能:

2 以下 VAST 3.0 功能尚不受支持:

  • 随播广告素材 adSlotId
  • 随播广告投放选项
  • 图标

3 以下 VMAP 功能尚不受支持:

  • 特定于 VMAP 的跟踪事件
  • 与 VMAP 相关的错误代码
  • 重叠式广告
  • 除 hh:mm:ss 或“start”和“end”之外的时间偏移量
  • 显示 breakType 属性
  • repeatAfter 个属性

4 仅支持图片随播广告素材。图片随播广告需要自定义实现才能填充广告。tvOS 不支持随播广告。

5 传统可跳过式广告仅在适用于 HTML5、iOS、tvOS、Roku 和 Android(包括 Android TV)的 IMA DAI SDK 中受支持。 使用 Cast SDK 时,您必须使用 StreamRequest.senderCanSkip 声明跳过功能,以支持传统的跳过广告。

6 TrueView 可跳过式广告仅在适用于 HTML5、iOS 和 Android(包括 Android TV)的 IMA DAI SDK 中受支持。

7 Cast SDK 不支持 AdSense 功能。

8 为什么显示该广告?要求在创建 StreamManager 时传递 adUiElement 参数。 Cast SDK 不支持为什么显示该广告?

JavaScript 框架的注意事项

将 JavaScript 框架(例如 React 或 AngularJS)与 IMA HTML5 SDK 搭配使用时,需要注意一些事项。这些框架通常会移动 DOM 的元素,这可能会导致 IMA SDK 出现问题,因为该 SDK 在启动时需要 DOM 保持静态。IMA SDK 支持 JavaScript 框架,前提是 SDK 在框架完成 DOM 元素移动后启动。具体而言,在构建 StreamManager 时作为 adUiElement 实参传递的 HTML5 元素在实例化后不应再移动。

Apple AirPlay 支持

IMA SDK 不支持 Apple AirPlay。停用 AirPlay 或在检测到 AirPlay 时停用广告请求。