广告检查器(Beta 版)

广告检查器 是一种应用内叠加层,可让获得授权的设备直接在移动应用内对测试广告请求进行实时分析。它包含在 Google 移动广告 SDK 8.10.0 及更高版本中,无需编写任何代码即可启用。

您可以使用广告检查器完成以下操作:

  • 检查您的广告单元
  • 检查广告是否按预期填充
  • 发现错误并查看有关如何修正错误的详细信息
  • 查看每个请求中各个出价广告联盟的详细信息
  • 查看每个请求中各个广告联盟的中介详细信息
  • 测试单个第三方出价广告来源或广告瀑布流中介广告来源
  • 确认您已针对出价和广告瀑布流中介正确配置了每个广告单元

本指南演示了如何启动和使用广告检查器中的不同广告功能。

前提条件

如要使用广告检查器,您需要:

  • 使用 Google 移动广告 SDK 8.10.0 或更高版本。

启动广告检查器

您可以通过以下方式从应用中的任何位置启动广告检查器:

  1. 使用调试菜单中的“启动”按钮。
  2. 使用您在广告检查器设置中选择的手势。
  3. 使用提供的 API 以编程方式创建。

使用调试菜单启动

通过调试菜单启动广告检查器,无需对应用进行任何更改;只需找到由您的 Ad Manager 广告资源网投放的广告,用双指轻触并按住广告,即可打开调试菜单。然后,选择打开广告检查器

如果您没有关联设备,系统可能会要求您登录 Ad Manager 账号。

您也可以从调试设置中选择“广告检查器”设置,然后选择一个手势;日后,无需通过调试菜单,直接使用该手势即可打开广告检查器。

以编程方式启动

广告检查器也可以通过编程方式启动:

Swift

GADMobileAds.sharedInstance().presentAdInspector(from: viewController) { error in
  // Error will be non-nil if there was an issue and the inspector was not displayed.
}

Objective-C

[GADMobileAds.sharedInstance presentAdInspectorFromViewController:viewController
  completionHandler:^(NSError *error) {
    // Error will be non-nil if there was an issue and the inspector was not displayed.
}];

此 API 适用于以编程方式注册的测试设备。

确保传递到此 API 的视图控制器已完全在屏幕上可见(已调用 viewDidAppear:)。如果传递的视图控制器正处于显示过程中(例如在视图控制器的 viewDidLoad 函数中调用 API 时),则将无法显示广告检查器。

查看广告单元并排查问题

启动后,系统会显示广告检查器主屏幕,其中列出在此应用会话期间启用广告检查器后设备发出了广告请求的所有广告单元。该列表还包含已启用出价功能的广告单元,按时间先后顺序排列,最近完成的请求排在最前面,未完成任何广告请求的广告单元则会调暗:

我们建议您在使用广告检查器之前先初始化 Google 移动广告 SDK

查看广告单元的中介广告瀑布流详细信息

点按某个广告单元可查看其 SDK 请求日志,其中详细记录了在系统响应最新广告请求将广告填充到该广告单元之前(或在广告瀑布流以无任何广告填充而结束之前)的中介广告瀑布流。

使用披露指示器可以展开每个请求,以显示该请求的中介广告瀑布流的结果,以及与该请求相关的任何错误和延迟。

对于第三方广告来源,错误消息会直接从广告来源发送。如需了解详情,请咨询您的第三方广告来源。

查看广告单元的出价详细信息

如果您还不熟悉出价功能,请参阅公开出价简介

在 SDK 请求日志中,您可以看到广告请求中调用的出价广告来源。点按 SDK 请求日志中的某个广告单元,即可查看出价竞价中每个广告来源的详细信息。

出价结果的排列顺序为,可操作项更靠近列表顶部:

  • 顶部是赢得竞价的广告联盟。

  • 接下来是有问题的广告联盟。您可以按照出价常见问题解答末尾相应的问题排查步骤操作。

  • 然后是未返回任何广告或未出价的广告联盟。这可能意味着该广告来源存在问题。此类问题有很多种,因为广告来源可能是由于设置或决策原因而没有出价。您可以参考广告来源的设置指南或公开出价常见问题解答,以获取更多支持。

  • 最后,列表底部是出价竞价失败的广告联盟。

中介广告瀑布流可以根据广告来源的有效每千次展示费用 (eCPM) 值来放置出价竞价中获胜的广告来源。

中介广告瀑布流是多个收益组竞争同一个广告资源的结果。您最多可以向一个收益组添加 10 个第三方收益合作伙伴,包括出价收益合作伙伴和移动应用收益合作伙伴的中介。

高级广告单元调试

在排查广告单元问题时,深入研究广告请求和响应有助于找出问题所在,或者与 Google 支持团队分享这些信息,以便他们协助调试。点按广告瀑布流链顶部的菜单图标,然后选择共享广告请求和响应,以导出完整的广告请求和响应。这样,您就不必在自己的应用上运行网络轨迹了。

此外,您还可以点按请求字符串所在菜单中的第三方出价参数选项,查看已解码的第三方出价参数。这会详细说明哪些第三方出价参数可能存在问题,帮助您调试应用或验证广告联盟是否成功收集了其信号。

查看可用的适配器

点击 Adapters(适配器)标签页,查看与您应用中出价或中介配置中的广告来源关联的所有第三方适配器的列表。然后,展开卡片以查看其初始化状态和 SDK 版本。除了支持的第三方适配器之外,您还可以查看自定义事件适配器。通过自定义事件,发布商可以使用 Ad Manager 不支持的广告联盟。在适配器列表中,自定义事件可通过其唯一的类名称与标准第三方适配器区分开来。除了提供类名称和状态信息之外,广告检查器还会在 Ad Manager 网站界面中显示为这些自定义事件分配的标签。

如果找不到相应适配器或初始化失败,请参阅检查移动应用广告投放,了解详情。

测试广告单元

如果您想测试广告单元,但不想在应用界面中导航到该广告单元,广告检查器支持直接从广告单元详情页面进行测试。此外,您可以同时测试多个广告单元、异步加载和查看您的测试广告请求,甚至执行单个广告来源测试。

广告测试

本部分介绍的广告检查器广告测试是一款非常实用的工具,可与单个广告来源测试搭配使用,用于验证基本广告体验和中介配置。

准备好测试广告单元后,请点按广告检查器屏幕顶部的请求测试广告按钮,以触发广告检查器的广告测试。然后,测试结果会显示在 SDK 请求日志中的Requested from ad inspector(从广告检查器请求)标题下方。

了解如何在应用中使用广告检查器

单一广告来源测试

广告检查器具有一项功能,可让您限制应用中的广告请求,以便仅投放来自单个出价广告来源或广告瀑布流中介广告来源的广告。这样,您就可以验证是否已正确实现第三方适配器,以及广告来源是否按预期投放。

如需启用此功能,请开启屏幕底部的单一广告来源测试开关。此时会显示以下广告来源选择对话框:

您必须先初始化 Google 移动广告 SDK,然后才能使用单一广告来源测试。

然后,您可以选择一个广告来源进行测试。选择广告来源后,系统会显示以下屏幕:

单一广告来源测试设置适用于今后在同一会话中发出的所有广告请求。但是,此类设置不会应用于该会话中之前已缓存但尚未显示的任何广告。我们建议您在应用单一广告来源测试时强制重启您的应用,以便使可能会投放的缓存广告失效,这些广告并非来自您所选的接收广告请求的广告来源。

重启应用后,所有广告单元展示位置都将仅展示来自所选广告联盟的广告。当单个广告来源测试处于活动状态时启动广告检查器,以显示有效的测试广告来源:

在单一广告来源测试模式下,所有广告请求都会尝试从所选广告来源填充广告,无论是否针对请求的广告单元的出价或中介配置了该广告来源。如果您要测试的广告来源不在某广告单元的中介广告瀑布流中,您会收到一条“未填充”错误消息。

在单一广告来源测试中,您可以点按广告单元来查看其 SDK 请求日志。 这样您就可以了解,所选广告来源是否填充了在启用单一广告来源测试后发出的广告请求。如果广告来源未能加载广告,则系统会显示一条错误消息,说明相应错误。

如果您向某个中介广告瀑布流多次添加了所选广告来源,则会在广告瀑布流中看到在有广告填充之前(或在广告瀑布流以无任何广告填充而结束之前)对该广告来源的每一次调用。

停止单个广告来源测试

如需停止测试,请关闭开关:

以下重启屏幕上随后会显示确认消息:

我们建议在停止测试后强制重启应用,以便使接受测试的广告来源的缓存广告无效。

复制整个调试输出

广告检查器支持从该工具复制包含整个调试输出的 JSON 字符串,包括 Ad Manager 应用的详细信息、适配器初始化状态以及所有广告单元的测试结果。

为此,请点按应用图标七次,直到看到已将广告检查器 JSON 复制到剪贴板消息。