使用網路檢查器檢查網路流量

透過集合功能整理內容 你可以依據偏好儲存及分類內容。

網路檢查器會根據時間軸顯示即時網路活動,顯示收發的資料。這可讓您檢查應用程式轉移資料的方式和時機,並適當調整基礎程式碼。

如要開啟網路檢查器,請按照下列步驟操作:

  1. 在 Android Studio 導覽列中,依序選取「View」>「Tool Windows」>「App Inspection」。在應用程式檢查視窗自動連線至應用程式程序後,從分頁中選取「Network Inspector」。如果應用程式檢查視窗未自動連結應用程式程序,您可能需要手動選取應用程式程序。
  2. 從「應用程式檢查」視窗中選取要檢查的裝置和應用程式程序。

網路檢查器總覽

畫面頂端會顯示事件時間軸。在時間軸上,您可以1以拖曳的方式選取時間軸部分來查看流量。

圖 1. 網路檢查器視窗

在時間軸下方的 2 窗格中,選取下列其中一個分頁標籤,進一步瞭解時間軸中所選部分的網路活動:

  • 連線檢視畫面:列出應用程式所有 CPU 執行緒在所選時間軸內傳送或接收的檔案。您可以檢查每個要求的大小、類型、狀態和傳輸持續時間。按一下任一欄標題即可排序此清單。您也可以查看時間軸中所選部分的詳細分析資料,顯示每個檔案的傳送或接收時間。
  • 執行緒檢視:顯示應用程式每個 CPU 執行緒的網路活動。如圖 2 所示,這個檢視畫面可讓您查看哪個網路執行緒負責每個網路要求。

    圖 2.Thread View (會話串檢視) 中,依應用程式執行緒檢查網路要求

在「Connection View」或「Thread View」中,按一下要求名稱即可檢查傳送資料 3 的詳細資訊,或已收到。按一下各個分頁標籤,即可查看回應標頭和內文、要求標頭和內文,或呼叫堆疊。

在「Response」和「Request」分頁中,點選「View Parsed」連結可顯示格式化文字,點選「View Source」連結可顯示原始文字。

圖 3. 按一下相對應的連結,即可切換原始文字 (左) 和格式化文字 (右)

URL url = new URL(MY_URL_EN);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
...
// Sets acceptable encodings in the request header.
urlConnection.setRequestProperty("Accept-Encoding", "identity");

網路連線疑難排解

如果網路檢查器偵測到流量值,但無法辨識任何支援的網路要求,您會收到以下錯誤訊息:

**Network Inspector Data Unavailable:** There is no information for the
network traffic you've selected.

目前網路檢查工具僅支援 HttpURLConnectionOkHttp 網路連線,如果您的應用程式使用其他網路程式庫,您可能無法在網路檢查工具中查看網路活動。如果您看到這則錯誤訊息,但應用程式確實使用了 HttpURLConnectionOkHttp,請回報錯誤,或是搜尋 Issue Tracker,將您的問題告訴我們在與您問題相關的現有報表中。您也可以透過這些資源要求其他程式庫的支援。