Setting Up Charles Proxy for the Google Mobile Ads SDK on Android N or Higher

在 Android N 或更高版本中,只有在 执行下列步骤:

  1. 在移动设备上更新 Google Play 服务。
  2. 在移动设备上启用网络跟踪功能。
  3. 在设备上安装 Charles SSL 证书,并设置代理。
  4. 为您的移动应用启用 SSL 代理。

在移动设备上更新 Google Play 服务

对于模拟器,如果侧边菜单中没有“Google Play”部分 您可能需要更新 Android Studio 并下载最新的系统 Virtual Device Configuration 映像。请务必使用系统 目标环境中包含 Google Play 的图片。

使用侧边菜单查看 Google Play 服务并将其更新到最新版本 版本。Google Play 服务的最低可用版本是 14.5.74

对于实体移动设备(手机或平板电脑),您可以搜索 Google 播放或关注此内容 链接 直接打开 Google Play

在移动设备上启用网络跟踪功能

要启用网络跟踪功能,您需要启用开发者 选项 设备。启动 Google 设置应用,然后选择 Google >广告 >启用 广告调试日志记录。更详细的 guide 是 AdMob 和 Google Ad Manager 发布商均可使用。

在设备上安装 Charles SSL 证书,并设置代理

要将 Charles 用作您移动应用的代理,您需要下载 安装 Charles 。关注 Charles安装 SSL 证书的说明, Android 模拟器或移动设备。

将模拟器与 代理,因为 模拟器已连接到与运行计算机相同的 Wi-Fi 网络 Charles。将模拟器与代理搭配使用时,将代理设置为 localhost (http://127.0.0.1) 以及 Charles 代理运行所在的端口(可在以下位置找到 Charles 菜单选项代理 >代理设置)。

如果您使用的是实体移动设备(手机或平板电脑),您需要执行以下操作: 将移动设备与你的计算机连接到同一个 Wi-Fi 网络 使用“高级网络”运行 Charles 设置。在设置 代理设置,请使用 Charles 菜单选项帮助 > 本地 IP 地址:用于获取计算机的 IP 地址,并将其输入到代理中 (您的设备必须连接到同一 Wi-Fi 网络才能启用此功能)。 使用 Charles 代理运行所在的端口。

为您的移动应用启用 SSL 代理

要让 Charles 拦截您的移动应用的 SSL 流量,您需要声明 您的应用可以信任用户提供的 SSL 证书。

首先,您需要为网络安全添加一个新的 XML 资源文件 配置 路径 res/xml/network_security_config.xml

<network-security-config>
   <debug-overrides>
       <trust-anchors>
           <!-- Trust user added CAs while debuggable only -->
           <certificates src="user" />
       </trust-anchors>
   </debug-overrides>
</network-security-config>

接下来,更新 AndroidManifest.xml 文件以使用网络安全功能 配置。

<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
    <application ...
                 android:networkSecurityConfig="@xml/network_security_config"
                 ... >
        ...
    </application>
</manifest>

然后,您可以启动移动应用,并在以下位置查找广告请求: Charles 日志。

如果您仍有疑问或需要一对一咨询,请与我们联系 联系您的 Google 技术支持客户经理,预约我们的咨询交流时间 Google Ads 开发者关系团队。