Configurare il proxy Charles per l'SDK Google Mobile Ads su Android N o versioni successive

Seleziona la piattaforma: Android Android (legacy)

Su Android N o versioni successive, le chiamate degli annunci sono visibili nel proxy Charles solo se vengono eseguiti i seguenti passaggi:

  1. Installa il certificato SSL Charles sul dispositivo e configura il proxy.
  2. Attiva il proxy SSL per la tua app mobile.

Installa il certificato SSL Charles sul dispositivo e configura il proxy

Per utilizzare Charles come proxy per la tua app, scaricalo e installalo sul tuo computer.

Per salvare il certificato come file .pem o .cer, seleziona Help > SSL Proxying > Save Charles Root Certificate. Per installare il certificato sul dispositivo, segui le istruzioni in Help > SSL Proxying.

Se utilizzi un emulatore Android con un proxy, imposta l'indirizzo del proxy su http://127.0.0.1. Imposta la porta sul valore mostrato in Charles da Proxy > Proxy Settings.

Se utilizzi un dispositivo fisico, collegalo alla stessa rete Wi-Fi del computer. Per configurare il proxy, apri le impostazioni di rete avanzate del dispositivo. Per maggiori dettagli, consulta Connettere il tuo smartphone Pixel a reti Wi-Fi. In Charles, seleziona Help > Local IP Address per trovare il tuo indirizzo IP. Sul dispositivo, inserisci l'indirizzo IP di Charles e la porta Charles come proxy.

Attiva il proxy SSL per la tua app mobile

Affinché Charles intercetti il traffico SSL della tua app mobile, devi dichiarare che la tua app può considerare attendibile un certificato SSL. Puoi considerare attendibile un certificato installato dall'utente o incorporare il certificato Charles come risorsa non elaborata nella tua app. Ad esempio, puoi salvare il certificato nel file res/raw/charles_cert.pem.

Innanzitutto, aggiungi un nuovo file di risorse XML per la configurazione della sicurezza di rete nel file 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>

Poi, aggiorna il file AndroidManifest.xml per utilizzare la configurazione della sicurezza di rete.

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

A questo punto, puoi avviare l'app mobile e cercare le richieste di annunci nel log di Charles.