Настройка Charles Proxy для Google Mobile Ads SDK на устройствах Android N и более поздних версий

Выберите платформу: Android Android (устаревшая версия)

На устройствах с Android N или более поздней версии вызовы объявлений видны в Charles Proxy только после выполнения следующих действий:

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

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

Если вы используете эмулятор и не видите раздел Google Play в боковом меню, возможно, вам нужно обновить Android Studio. Скачайте последние образы системы в разделе Virtual Device Configuration (Настройка виртуального устройства) и используйте образ системы с Google Play в качестве цели.

В боковом меню проверьте, установлена ли последняя версия сервисов Google Play, и при необходимости обновите их.

Чтобы открыть Google Play на мобильном устройстве (телефоне или планшете), найдите приложение в списке или перейдите по ссылке.

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

Чтобы включить отслеживание сети, активируйте на устройстве параметры для разработчиков. Подробнее о том, как настроить параметры для разработчиков на устройстве…

Откройте приложение "Настройки Google" и выберите Google > Реклама > Включить ведение журнала отладки для объявлений. Подробнее об отслеживании сети…

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

Чтобы использовать Charles в качестве прокси-сервера для приложения, скачайте и установите Charles на компьютер.

Чтобы сохранить сертификат в виде файла .pem или .cer, выберите Help > SSL Proxying > Save Charles Root Certificate (Справка > Проксирование SSL > Сохранить корневой сертификат Charles). Чтобы установить сертификат на устройство, следуйте инструкциям в разделе Справка > Прокси-сервер SSL.

Если вы используете эмулятор Android с прокси-сервером, укажите адрес прокси-сервера http://127.0.0.1. Укажите порт, который показывается в Charles в разделе Proxy > Proxy Settings (Прокси-сервер > Настройки прокси-сервера).

Если вы используете физическое устройство, подключите его к той же сети Wi-Fi, что и компьютер. Чтобы настроить прокси-сервер, откройте расширенные настройки сети на устройстве. Подробнее о том, как подключаться к сетям Wi-Fi на телефоне Pixel… Чтобы узнать свой IP-адрес, в Charles выберите Help > Local IP Address (Справка > Локальный IP-адрес). На устройстве введите IP-адрес из Charles и порт Charles в качестве прокси-сервера.

Как включить прокси-сервер SSL для мобильного приложения

Чтобы Charles мог перехватывать SSL-трафик вашего мобильного приложения, укажите, что приложение может доверять SSL-сертификату. Вы можете доверять сертификату, установленному пользователем, или встроить сертификат Charles в приложение в качестве необработанного ресурса. Например, вы можете сохранить сертификат в файле res/raw/charles_cert.pem.

Сначала добавьте новый XML-файл ресурсов для конфигурации сетевой безопасности в файл res/xml/network_security_config.xml:

<network-security-config>
   <debug-overrides>
       <trust-anchors>
           <!-- Trust Charles SSL certificate stored in res/raw -->
           <certificates src="@raw/charles_cert" />
           <!-- 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.