本页面介绍了 IMA DAI 对浏览器、视频格式和平台的支持和兼容性方面的一般信息。
支持的视频格式和浏览器
HTML5 仍然是一项不断发展变化的新标准。因此,不同浏览器对各种功能的支持各不相同,并且没有一种默认的视频格式是所有主流浏览器都支持的。大多数浏览器使用的三大主要视频格式是 H.264、HLS 和 Dash。
VAST 事件兼容性
本部分列出了系统会根据 VAST 响应中返回的信息自动报告给服务器的 VAST 事件。
完全支持
complete
、creativeView
、firstQuartile
、impression
、midpoint
、pause
、resume
、rewind
(在向后方向有任何显著跳转时触发)、start
、thirdQuartile
。
部分支持
click
系统仅针对视频广告发送
Click
事件。 在 Android、iOS 或桌面设备上的原生全屏播放器上无法捕获点击,但在视频关闭后,页面内点击跟踪元素仍可捕获点击。不过,如果视频元素在 iPad 上使用原生控件,则无法捕获点击。fullscreen
IMA 支持模拟全屏模式,在这种模式下,视频会占据整个浏览器窗口。 如果视频的
offsetWidth
和offsetHeight
至少与文档正文大小相同,IMA 会将其视为处于全屏模式。 所有浏览器都支持此模式。在 iPhone 和 Android 3.0 之前的平台上,视频始终在全屏模式下播放。
mute
、unmute
iOS 和 Android 仅支持原生音量控制。因此,IMA 无法确定音量或静音状态,SDK 也不会收到更改通知。下面列出了支持和不支持
mute
、unmute
的浏览器版本:- 受支持的浏览器: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 | ||
Android | ||
Google Cast | ||
tvOS | ||
Roku |
视频功能和 SDK 版本
如需详细了解以下功能,请参阅视频广告概览。
IAB 视频套件 | 支持 |
---|---|
VAST 4 | 1 |
VAST 3 | 2 |
VAST 2 | |
VPAID 2 | |
VMAP 1.0.1 | 3 |
Ad Manager 视频功能 | 支持 |
线性广告 | |
非线性广告(重叠式广告) | |
随播广告 | 4 |
VAST 3 个备用随播广告资源 | |
Active View 可见度 | |
VAST 重定向 | |
使用展示广告请求进行配套回填 | |
Google 发布商代码 (GPT) 兼容性 | |
内容感知 | |
广告规则 | |
广告连播 | |
导视广告 | |
针对多事件跟踪 (MET) 生成报告 | |
可跳过(预订型 / 非 TrueView 广告) | 5 |
AdSense 视频广告功能 7 | 支持 |
TrueView InStream | 6 |
插播可选广告 | |
标准插播广告 | |
全槽 | |
随播广告 | 4 |
随播回填 | |
叠加层 | |
Ad Manager Ad Exchange 功能 | 支持 |
TrueView InStream | 6 |
插播可选广告 | |
标准插播广告 | |
全槽 | |
随播广告 | 4 |
随播回填 | |
叠加层 | |
Active View 可见度 | |
为什么显示该广告? | 8 |
1 在 Google Ad Manager 支持的 VAST 4 功能中,IMA 支持以下功能:
- VAST 4.2
- 支持安全交互式媒体接口定义 (SIMID)
- 允许使用多个
UniversalAdID
节点
- VAST 4.0
- AdID
- Mezzanine 文件
- 新的 VAST 错误代码
- 新的 VAST 宏
AdVerifications
支持
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 只有适用于 HTML5、iOS 和 Android(包括 Android TV)的 IMA DAI SDK 支持可跳过的 TrueView 广告。
7 Cast SDK 不支持 AdSense 功能。
8 为什么显示该广告?要求在创建 StreamManager
时传递 adUiElement
参数。
Cast SDK 不支持为什么显示该广告。
JavaScript 框架的注意事项
将 JavaScript 框架(例如 React 或 AngularJS)与 IMA HTML5 SDK 搭配使用时,需要注意一些事项。这些框架通常会移动 DOM 元素,这可能会破坏 IMA SDK,因为该 SDK 预计 DOM 在启动时是静态的。只要 SDK 是在框架移动 DOM 元素后启动的,IMA SDK 就支持 JavaScript 框架。具体而言,在构建 StreamManager
时作为 adUiElement
参数传递的 HTML5 元素在实例化后不应移动。
支持 Apple AirPlay
IMA SDK 不支持 Apple AirPlay。停用 AirPlay,或在检测到 AirPlay 时停用广告请求。