Google 互动式媒体广告 SDK 常见问题解答


为什么有的格式无法返回广告?
测试广告代码会设置为始终针对有效请求返回广告。这是为了简化集成,并让您更轻松地测试玩家请求和呈现广告的方式。不过,并不是每个地区都会展示 广告格式。如果您的集成正常运行 对测试代码有效,而对您自己的代码无效,原因可能是 以下:
  • 您正在向自己的环境中投放格式不受支持的视频。例如,您仅向 iOS 或 Android 设备投放 HTML5 广告。
  • 如果您使用的是 Ad Manager,那么您的发布商 ID 目前可能没有任何定位到该 ID 的广告。此外,请确保您已批准相关广告并 Ad Manager 中的广告素材。
  • 如果您使用的是 AdSense,则您网站或测试网页的定位条件可能没有任何有效的广告。最常见的原因是 不公开、未抓取的网站。
  • 如果您使用的是 Ad Exchange 广告联盟合作伙伴管理功能,并且未设置 descriptionURL 或 descriptionURL 未列在自有或自营网域管理列表中,系统不会向此类网域投放广告。
  • 查看 Ad Exchange 视频广告中定义的 minCPM 阈值。每千次展示费用较高可能会导致填充率非常低。要更正此问题,请尝试 从广告请求中移除 minCPM 或移除广告单元参数 (即 slotname),以验证是否会影响填充率。
什么样的 descriptionUrl 算是不错的 descriptionUrl?
为了达到最佳效果,descriptionUrl 所指向网页的内容不应是一系列字词或短语,而应是 1-3 段实际描述相应内容以及您在提供该内容中所扮演的角色。 过去曾成功使用过的方法之一是,从预定义的块中动态拼接 descriptionUrl 网页内容。例如,几句介绍内容的文字、几句介绍您网站所提供内容的文字,以及与每个 AdSense 渠道(例如“娱乐”或“体育”)相关联的几个预定义摘要。如此一来, 内容具有合理且不同的 descriptionUrl,它们与 它既提供一般信息(如类型描述) 具体信息(与内容直接相关的内容)。

该元数据 HTML 应该非常简单,例如:

<html>
  <head>
    <title>Domain.com - Your tag line here!</title>
  </head>
  <body>
    <h1>Descriptions</h1>
    <h2>About this Content</h2>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. ...</p>
    <h2>About Domain.com</h2>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. ...</p>
  </body>
</html>
  
为什么我收到“广告响应不含有效的广告类型”错误?
出现此错误通常是因为没有任何广告定位到特定 publisherId(在给定时间段内)。此条件 在一天之中可能会有所变化,而随着广告系列的开始和结束,在几天内可能会有所变化。 您应当检查您希望定位的广告是否已过期, 广告定位条件是否正确。 只要使用测试 publisherId 正确请求、接收和呈现广告,您就可以确保在广告可用时,系统会使用您的正式版 publisherId 正确处理这些广告。
您有可供我用于测试的 Ad Manager 视频广告代码吗?
示例代码页面提供示例代码。
我是否应将 adSlotWidth 和 adSlotHeight 设置为与 Ad Manager 广告代码中的 sz 相同的值?
不一定。adSlotWidth 和 adSlotHeight 必须设置为播放器的宽度/高度,或者您希望广告填充的区域的宽度/高度。AdSense 会根据这些值来确定哪些广告适合投放 进入这个空间Ad Manager 广告代码中的 sz 键值对是一个定位参数,不一定会影响投放的广告素材(详情见下文)。
演示广告代码的显示效果良好,但切换为我的广告代码后,就无法显示任何广告了。
请进行检查,确保已将内容投放到您所需的广告代码 请求。最简单的查看方法是监控 HTTP 流量。如果 HTML 锚点块中返回了 1x1 像素 grey.gif 图片,则您需要在 Ad Manager 中检查定位条件。
我想多次请求使用同一代码的广告,但我的第一个广告 请求。如何解决此问题?
如果您多次请求广告,则需要告知广告服务器这些是合法请求,而不是意外重复。SDK 通过两个快速 API 调用来执行此操作:
  1. 在您的 AdsManager 实例上调用 destroy()。 这样,当您对 contentComplete()。您在下次发出请求时会获得新的 AdsManager。
  2. 在 AdsLoader 实例上调用 contentComplete()。这会重置 SDK,以使新广告请求看起来不像是上一个广告请求的副本。
执行上述两个调用后,您可以对 AdsLoader 实例调用 requestAds(),以获取另一组广告来为您的新视频播放。
如何使用 IMA SDK 请求重叠式广告和全幅 AdSense 广告?

若要使用 SDK 请求 AdSense 广告,您首先需要获取 AdSense 广告代码。您可以前往 AdSense 视频广告页面详细了解。创建代码后,您需要执行以下操作 发出重叠式广告请求或全幅广告请求的步骤如下:

重叠式广告
  1. 在 AdsRequest 中,将 ViewModes 设为 NORMAL。
  2. 在广告代码中,添加参数 overlay=1。
全屏广告
  1. 在 AdsRequest 中,将 ViewModes 设为 FULLSCREEN。
  2. 在广告代码中,添加参数 overlay=0。
我点击广告时收到“点击后到达网址无效”错误消息。原因可能是什么?
导致此错误的最常见原因是点击跟踪网址未正确转义。如果看到此错误,请进行检查 网址在您的 VAST 响应中进行了正确转义。
在 Android 和 iOS SDK 中,有没有办法让整个视频广告都具有可点击性?
就整个视频的点击跟踪而言,标准的观看者体验 移动视频的模式出现后,点按视频 暂停播放或显示播放器控件。为了避免用户 而只是想访问 播放器控件 IMA 使用了解详情按钮 用户点击广告并详细了解所宣传的产品。
为什么我会看到“VAST 文档为空”出错了?
当广告代码返回空的 VAST 文档时,就会发生此错误,表示广告未正常投放。请与您的客户经理或广告服务器代表联系,了解您的广告代码无法正常运行的原因。
我可以更改跳过广告框或其他界面元素的大小/文字吗?
IMA SDK 不支持更改界面元素的布局、大小或内容。 如需详细了解界面元素,请参阅 AdsManager.uiElements。
为什么我在 iOS 设备上无法调节广告的音量?
iOS 不允许您以编程方式设置音量。如果您使用的是 HTML5 SDK adsManager.setVolume() 没有任何影响。因此,iOS SDK 不会在 IMAAdsManager 上提供音量设置器。
我可以使用多个线程来初始化和操纵界面吗?
界面的所有初始化都必须在主线程上完成。更新后 可以选择实施 后台播放。