Android N 以降では、次の手順を実行した場合にのみ、Charles プロキシで広告呼び出しを確認できます。
- デバイスに Charles SSL 証明書をインストールし、プロキシを設定します。
- モバイルアプリの SSL プロキシを有効にします。
デバイスに Charles SSL 証明書をインストールし、プロキシを設定する
アプリのプロキシとして Charles を使用するには、パソコンに Charles をダウンロードしてインストールします。
証明書を .pem ファイルまたは .cer ファイルとして保存するには、[Help] > [SSL Proxying] > [Save Charles ルート証明書] を選択します。デバイスに証明書をインストールするには、[Help](ヘルプ)> [SSL Proxying](SSL プロキシ)の手順に沿って操作します。

プロキシで Android Emulator を使用する場合は、プロキシ アドレスを http://127.0.0.1 に設定します。[Proxy](プロキシ)> [Proxy Settings](プロキシ設定)で Charles に表示されている値にポートを設定します。
実機を使用する場合は、パソコンと同じ Wi-Fi ネットワークにデバイスを接続します。プロキシを設定するには、デバイスの高度なネットワーク設定を開きます。詳しくは、Google Pixel を Wi-Fi ネットワークに接続するをご覧ください。Charles で、[Help] > [Local IP Address] を選択して IP アドレスを確認します。デバイスで、Charles の IP アドレスと Charles のポートをプロキシとして入力します。
モバイルアプリの SSL プロキシを有効にする
Charles がモバイルアプリの SSL トラフィックをインターセプトできるようにするには、アプリが SSL 証明書を信頼できることを宣言します。ユーザーがインストールした証明書を信頼するか、Charles 証明書をアプリの未加工リソースとして埋め込むことができます。たとえば、証明書を res/raw/charles_cert.pem ファイルに保存できます。
まず、res/xml/network_security_config.xml ファイルでネットワーク セキュリティ構成用の新しい 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 ログで広告リクエストを探します。