在 Android N 以上版本中為 Google Mobile Ads SDK 設定 Charles 代理程式

在 Android N 以上版本中,只有在執行下列步驟時,Charles 代理程式才會顯示廣告呼叫:

  1. 更新行動裝置上的 Google Play 服務。
  2. 在行動裝置上啟用網路追蹤功能。
  3. 在裝置上安裝 Charles SSL 憑證,並設定 Proxy。
  4. 為行動應用程式啟用 SSL Proxy。

更新行動裝置上的 Google Play 服務

如果模擬器的側邊選單中沒有 Google Play 專區,您可能需要更新 Android Studio,並在虛擬裝置設定中下載最新的系統映像檔。請務必使用目標中含有 Google Play 的系統映像檔。

使用側邊選單檢查並更新 Google Play 服務至最新版本。Google Play 服務的最低運作版本為 14.5.74

如果是實體行動裝置 (手機或平板電腦),您可以搜尋 Google Play,或直接點選這個連結開啟 Google Play。

在行動裝置上啟用網路追蹤功能

如要啟用網路追蹤功能,您必須為裝置啟用開發人員選項。啟動 Google 設定應用程式,然後依序選取「Google」>「廣告」>「啟用廣告偵錯記錄」。AdMob 和 Google Ad Manager 發布商均可參閱更詳細的指南

在裝置上安裝 Charles SSL 憑證,並設定 Proxy

如要使用 Charles 做為行動應用程式的 Proxy,您必須在電腦上下載並安裝 Charles。按照 Charles 的操作說明,在 Android 模擬器或行動裝置上安裝 SSL 憑證。

使用搭配 Proxy 的模擬器會比較簡單,因為模擬器已連線至執行 Charles 的電腦所使用的同一個 Wi-Fi 網路。搭配 Proxy 使用模擬器時,請將 Proxy 設為 localhost (http://127.0.0.1) 和 Charles Proxy 執行的通訊埠 (位於 Charles 選單選項「Proxy」>「Proxy 設定」)。

如果您使用的是實體行動裝置 (手機或平板電腦),請使用進階網路設定,將行動裝置連上執行 Charles 的電腦,並連上相同的 Wi-Fi 網路。為實體裝置設定 Proxy 時,請使用 Charles 選單選項 Help > Local IP address 取得電腦的 IP 位址,並在裝置上輸入 Proxy 位址 (您必須連上相同的 Wi-Fi 網路,才能使用這項功能)。使用 Charles Proxy 執行的通訊埠。

為行動應用程式啟用 SSL Proxy

如要讓 Charles 攔截行動應用程式的 SSL 流量,您必須宣告應用程式可以信任使用者提供的 SSL 憑證。

首先,您需要在 res/xml/network_security_config.xml 路徑下為網路安全性設定新增 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>

接著,請更新 AndroidManifest.xml 檔案,以便使用網路安全性設定。

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

完成後,您可以啟動行動應用程式,並在 Charles 記錄中查看廣告要求。

如果您仍有疑問,或需要一對一諮詢,請與您的 Google 技術客戶經理聯絡,以便預約 Google Ads 開發人員關係維繫團隊的辦公時間。