Настройка Charles proxy Google Mobile Ads SDK на Android N или выше

На устройствах с Android N и выше рекламные вызовы видны в прокси-сервере Charles только при выполнении следующих действий:

  1. Обновите сервисы Google Play на мобильном устройстве.
  2. Включите функцию трассировки сети на мобильном устройстве.
  3. Установите SSL-сертификат Charles на свое устройство и настройте прокси-сервер.
  4. Включите SSL-прокси для вашего мобильного приложения.

Обновите сервисы Google Play на мобильном устройстве.

Если вы используете эмулятор, если раздел Google Play не отображается в боковом меню, возможно, вам потребуется обновить Android Studio и загрузить последние образы системы в разделе конфигурации виртуального устройства . Убедитесь, что вы используете образ системы, в котором Google Play указан в качестве целевой платформы.

Используйте боковое меню для проверки и обновления сервисов Google Play до последней версии. Минимальная рабочая версия сервисов Google Play — 14.5.74 .

Для физического мобильного устройства (телефона или планшета) вы можете выполнить поиск по Google Play или перейти по этой ссылке , чтобы напрямую открыть Google Play.

Включить сетевую трассировку на мобильном устройстве

Чтобы включить трассировку сети, необходимо включить параметры разработчика на вашем устройстве. Откройте приложение «Настройки Google» и выберите «Google» > «Объявления» > «Включить ведение журнала отладки для рекламы» . Более подробное руководство доступно для издателей AdMob и Google Ad Manager.

Установите SSL-сертификат Charles на свое устройство и настройте прокси-сервер.

Чтобы использовать 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-прокси для вашего мобильного приложения

Чтобы Чарльз мог перехватывать SSL-трафик вашего мобильного приложения, вам необходимо заявить, что ваше приложение может доверять предоставленному пользователем SSL-сертификату.

Во-первых, вам нужно добавить новый 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.