广告检查器

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

在版本低于8.5.0的移动广告 SDK 中使用广告检查器时,您可以执行以下操作:

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

对于移动广告 SDK 8.5.0 及更高版本,您还可以执行以下操作:

  • 查看每个请求中各个广告联盟的出价详细信息
  • 查看每个请求中各个广告联盟的出价和广告瀑布流中介详细信息
  • 测试单个第三方出价广告来源或广告瀑布流中介广告来源
  • 确认您已正确配置了每个广告单元的出价和 广告瀑布流中介

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

前提条件

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

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

启动广告检查器

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

  1. 使用注册测试设备时在 AdMob 界面中选择的手势。
  2. 使用提供的 API 以编程方式创建。
  3. 使用调试菜单中的“启动”按钮。

使用手势启动

无需对应用进行任何更改,即可使用手势启动广告检查器;只是 执行您在 AdMob 中为 测试设备了解详情

在 AdMob 界面中设置手势后(等待 15 分钟使其生效),您的应用需要向 Google 移动广告 SDK 发出广告请求,以了解您的手势设置。如果指定的手势不起作用,请尝试加载广告,重启应用,然后再次测试手势。

以编程方式启动

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

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 适用于测试设备 已注册 以编程方式或在 AdMob 界面中添加。

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

查看广告单元并排查问题

启动后,系统会显示广告检查器主屏幕,其中包含所有广告的列表 单位 在与设置了出价或中介的 AdMob 应用 ID 关联的 AdMob 界面中 配置:

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

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

点按广告单元可查看其 SDK 请求日志,其中提供了有关 直到广告填充结束(或广告瀑布流)为止的中介广告瀑布流 (针对最新的广告请求)。

可以使用披露指示器展开每个请求,以显示结果 以及所有错误和延迟时间 您请求的数据

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

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

前提条件:Google 移动广告 SDK 8.5.0 或更高版本

如果您刚开始接触出价,请参阅 概览

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

对出价结果进行排序,以便可操作项更接近 列表顶部:

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

  • 接下来是有问题的广告联盟。您可以遵循 相应问题的问题排查步骤

  • 然后是未返回任何广告或未出价的广告联盟。这个 这可能表明广告来源存在许多不同的问题 因为其设置或决策的原因可能没有出价。您可以参阅这则广告 来源的设置指南或 直接与广告来源联系 支持

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

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

在中介广告瀑布流中调用广告来源时,广告来源能投放广告。 如需详细了解出价如何与中介广告瀑布流协同发挥作用,请参阅 示例 2 和 出价的示例 3 和瀑布流广告来源

高级广告单元调试

对广告单元进行问题排查时,深入了解广告请求会很有帮助 和响应,找出出现故障的地方,或与 Google 分享 有助于调试的支持。点按瀑布顶部的菜单图标 链接,然后选择共享广告请求和响应,以导出完整的广告请求 和响应。这样,您就不必在自己的应用上运行网络轨迹了。

此外,您还可以查看已解码的第三方出价参数,只需点按 请求所在菜单中的第三方出价参数选项 字符串。这可提供有关哪些第三方出价参数 帮助您调试应用或验证网络是否 成功收集其信号

查看可用的适配器

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

如果未找到适配器或初始化失败,请参阅 排查使用广告检查器发现的问题

测试广告单元

如果您想测试自己的广告单元,而不用进入 应用的界面中,广告检查器可直接从广告单元详情屏幕中支持此操作。 此外,您还可以同时测试多个广告单元、异步加载和查看测试广告请求,甚至可以执行单个广告来源测试。

广告测试

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

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

了解如何在您的 应用

单一广告来源测试

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

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

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

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

单一广告来源测试设置适用于今后通过 同一个会话但是,此类设置不会应用于该会话中之前已缓存但尚未显示的任何广告。建议强制重启应用 来使任何缓存广告失效 而不是您选择的广告来源来接收请求。

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

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

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

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

停止单个广告来源测试

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

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

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

复制整个调试输出

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

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