Configura el proxy de Charles

Selecciona la plataforma: Android Android (heredada)

En Android N o versiones posteriores, las llamadas de anuncios solo son visibles en Charles Proxy cuando se realizan los siguientes pasos:

  1. Actualiza los Servicios de Google Play en el dispositivo móvil.
  2. Habilita el seguimiento de red en el dispositivo móvil.
  3. Instala el certificado SSL de Charles en tu dispositivo y configura el proxy.
  4. Habilita el proxy SSL para tu app para dispositivos móviles.

Actualiza los Servicios de Google Play en el dispositivo móvil

En el caso de un emulador, si no ves la sección de Google Play en el menú lateral, es posible que debas actualizar Android Studio. Descarga las imágenes del sistema más recientes en Configuración del dispositivo virtual y usa una imagen del sistema con Google Play en su destino.

Usa el menú lateral para verificar y actualizar los Servicios de Google Play a la versión más reciente.

En el caso de un dispositivo móvil físico (teléfono o tablet), puedes buscar Google Play o seguir este vínculo para abrir Google Play directamente.

Habilita el seguimiento de red en el dispositivo móvil

Para activar el seguimiento de red, habilita las opciones para desarrolladores en tu dispositivo. Para obtener más información, consulta Cómo configurar las opciones para desarrolladores integradas en el dispositivo.

Abre la app de Configuración de Google y selecciona Google > Anuncios > Habilitar el registro de depuración para anuncios. Para obtener más información, consulta Seguimiento de red.

Instala el certificado SSL de Charles en tu dispositivo y configura el proxy

Para usar Charles como proxy para tu app, descarga e instala Charles en tu computadora.

Para guardar el certificado como un archivo .pem o .cer, selecciona Help > SSL Proxying > Save Charles Root Certificate. Para instalar el certificado en tu dispositivo, sigue las indicaciones en Help > SSL Proxying.

Si usas un emulador de Android con un proxy, configura la dirección del proxy como http://127.0.0.1. Configura el puerto con el valor que se muestra en Charles desde Proxy > Configuración de proxy.

Si usas un dispositivo físico, conéctalo a la misma red Wi-Fi que tu computadora. Para configurar el proxy, abre la configuración de red avanzada de tu dispositivo. Para obtener más información, consulta Cómo conectarse a redes Wi-Fi en un teléfono Pixel. En Charles, selecciona Help > Local IP Address para encontrar tu dirección IP. En tu dispositivo, ingresa la dirección IP de Charles y el puerto de Charles como el proxy.

Habilita el proxy SSL para tu app para dispositivos móviles

Para que Charles intercepte el tráfico SSL de tu app para dispositivos móviles, declara que tu app puede confiar en un certificado SSL. Puedes confiar en un certificado instalado por el usuario o incorporar el certificado de Charles como un recurso sin procesar en tu app. Por ejemplo, puedes guardar el certificado en tu archivo res/raw/charles_cert.pem.

Primero, agrega un nuevo archivo de recursos XML para la configuración de seguridad de red en tu archivo 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>

Luego, actualiza el archivo AndroidManifest.xml para usar la configuración de seguridad de red.

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

Después de eso, puedes iniciar la app para dispositivos móviles y buscar solicitudes de anuncios en el registro de Charles.