Android N 以降では、次の手順を行わないと、Charles プロキシに広告呼び出しが表示されません。
- モバイル デバイスで Google Play 開発者サービスを更新する。
- モバイル デバイスでネットワーク トレースを有効にする。
- デバイスに Charles SSL 証明書をインストールし、プロキシを設定する。
- モバイルアプリの SSL プロキシを有効にする。
モバイル デバイスで Google Play 開発者サービスを更新する
エミュレータの場合、サイドメニューに [Google Play] セクションが表示されないときは、Android Studio の更新が必要な場合があります。 [Virtual Device Configuration] で最新のシステム イメージをダウンロードし、ターゲットに Google Play が含まれるシステム イメージを使用します。

サイドメニューを使用して、Google Play 開発者サービスを最新バージョンに更新します。

実機(スマートフォンまたはタブレット)の場合は、Google Play を検索するか、こちらの リンク から Google Play を直接開きます。
モバイル デバイスでネットワーク トレースを有効にする
ネットワーク トレースをオンにするには、デバイスの開発者向けオプションを有効にします。詳しくは、 デバイスの開発者向けオプションを設定するをご覧ください。
Google 設定アプリを開き、[Google] > [広告] > [広告のデバッグログを有効にする] を選択します。詳しくは、 ネットワーク トレースをご覧ください。

デバイスに Charles SSL 証明書をインストールし、プロキシを設定する
Charles をアプリのプロキシとして使用するには、パソコンに Charles をダウンロードして インストールします。
証明書を .pem ファイルまたは .cer ファイルとして保存するには、[Help] > [SSL Proxying] > [Save Charles ルート証明書] を選択します。デバイスに証明書をインストールするには、[Help] > [SSL Proxying] の手順に沿って操作します。

プロキシを使用する
Android エミュレータを使用する場合は、
プロキシ アドレスを http://127.0.0.1 に設定します。ポートは、Charles の [Proxy] > [プロキシ設定] に表示される値に設定します。
実機を使用する場合は、パソコンと同じ 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 ファイルに保存できます。
まず、
ネットワーク セキュリティ構成
用の新しい 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 ログで広告リクエストを確認できます。