Como configurar o Charles Proxy para o SDK dos anúncios para dispositivos móveis do Google no Android N ou em versões mais recentes

No Android N ou versões mais recentes, as chamadas de anúncio são visíveis no proxy Charles somente quando as seguintes etapas são executadas:

  1. Atualize o Google Play Services no dispositivo móvel.
  2. Ative o Rastreamento de rede no dispositivo móvel.
  3. Instale o certificado SSL do Charles no seu dispositivo e configure o proxy.
  4. Ative o proxy SSL para seu aplicativo para dispositivos móveis.

Como atualizar o Google Play Services no dispositivo móvel

Para um emulador, se a seção do Google Play não for exibida no menu lateral, talvez seja necessário atualizar o Android Studio e fazer o download das imagens de sistema mais recentes na Virtual Device Configuration. Use uma imagem do sistema com o Google Play no destino.

Use o menu lateral para verificar e atualizar a versão do Google Play Services para a versão mais recente. A versão de trabalho mínima do Google Play Services é 14.5.74.

Para um dispositivo móvel físico (smartphone ou tablet), você pode pesquisar no Google Play ou seguir este link para abrir o Google Play diretamente.

Ativar o Rastreamento de rede no dispositivo móvel

Para ativar o rastreamento de rede, você precisará ativar as opções do desenvolvedor para seu dispositivo. Inicie o app Configurações do Google e selecione Google > Ads > Enable debug logging for ads. Um guia mais detalhado está disponível para editores da AdMob e do Google Ad Manager.

Instalar o certificado SSL do Charles no dispositivo e configurar o proxy

Para usar o Charles como um proxy para seu app para dispositivos móveis, você precisará fazer o download e instalar o Charles em um computador. Siga as instruções do Charles para instalar um certificado SSL no emulador do Android ou em um dispositivo móvel.

É mais simples usar o emulador com um proxy porque o emulador já está conectado à mesma rede Wi-Fi com o computador que executa o Charles. Ao usar o emulador com um proxy, defina o proxy como localhost (http://127.0.0.1) e a porta em que o proxy Charles está sendo executado (encontrado na opção de menu Charles Proxy > Proxy Settings).

Se você estiver usando um dispositivo móvel físico (smartphone ou tablet), será necessário conectar o dispositivo móvel à mesma rede Wi-Fi com o computador executando o Charles usando as configurações avançadas de rede. Ao definir as configurações de proxy do seu dispositivo físico, use a opção de menu Charles Help > Local IP address para encontrar o endereço IP do seu computador e inserir o endereço proxy no dispositivo. Você precisa estar na mesma rede Wi-Fi para que isso funcione. Use a porta em que o proxy do Charles está sendo executado.

Como ativar o proxy SSL no seu app para dispositivos móveis

Para que o Charles intercepte o tráfego SSL do seu app para dispositivos móveis, você precisará declarar que seu aplicativo pode confiar em um certificado SSL fornecido pelo usuário.

Primeiro, você precisará adicionar um novo arquivo de recurso XML para Network Security Configuration no caminho 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>

Em seguida, atualize o arquivo AndroidManifest.xml para usar a configuração de segurança de rede.

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

Depois disso, inicie o app para dispositivos móveis e procure por solicitações de anúncios no registro do Charles.

Se você ainda tiver dúvidas ou precisar de uma consultoria individual, entre em contato com seu gerente técnico de contas do Google para se inscrever no horário de atendimento da nossa equipe de relações com o desenvolvedor do Google Ads.