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


为什么有的格式无法返回广告?
测试广告代码会设置为始终针对有效请求返回广告。这是为了简化集成,并让您更轻松地测试玩家请求和呈现广告的方式。不过,并不是每个地区都会展示 广告格式。如果您的集成正常运行 对测试代码有效,而对您自己的代码无效,原因可能是 以下:
  • 您正在向自己的环境中投放格式不受支持的视频。例如,您仅向 iOS 或 Android 设备投放 HTML5 广告。
  • 如果您使用的是 Ad Manager,那么您的发布商 ID 目前可能没有任何定位到该 ID 的广告。此外,请确保您已批准相关广告并 Ad Manager 中的广告素材。
  • 如果您使用的是 AdSense,则您网站或测试网页的定位条件可能没有任何有效的广告。最常见的原因是 不公开、未抓取的网站。
  • 如果您使用的是 Ad Exchange 广告联盟合作伙伴管理功能,并且未设置 descriptionURLdescriptionURL 未列在自有或自营网域管理列表中,系统不会向此类网域投放广告。
  • 查看 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 视频广告代码吗?
示例代码页面提供示例代码。
我是否应将 adSlotWidthadSlotHeight 设置为与 Ad Manager 广告代码中的 sz 相同的值?
不一定。adSlotWidthadSlotHeight 必须设置为播放器的宽度/高度,或者您希望广告填充的区域的宽度/高度。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 上提供音量设置器。
我可以使用多个线程来初始化和操纵界面吗?
界面的所有初始化都必须在主线程上完成。更新后 可以选择实施 后台播放