系統追蹤總覽

「系統追蹤」是指記錄短時間內的裝置活動。系統追蹤會產生一個追蹤檔,可用於產生系統報表。此報表可協助您找出改善應用程式/遊戲效能的最佳方法。

如需追蹤和剖析程序的完整簡介,請參閱 Perfetto 說明文件中的「追蹤指南」頁面。

Android 平台提供多種擷取追蹤記錄的選項:

  • Android Studio CPU 和記憶體分析器
  • Perfetto 指令列工具 (Android 10 以上版本)
  • 系統追蹤公用程式
  • Systrace 指令列工具

Android Studio CPU 分析器會在您與應用程式互動時,即時檢查應用程式的 CPU 用量和執行緒活動。您也可以在已經記錄下來的方法追蹤記錄、函式追蹤記錄和系統追蹤記錄中檢查詳細資料。記憶體分析器可針對觸控事件、Activity 變更和垃圾收集事件,提供相關的記憶體用量總覽。

Perfetto 是 Android 10 中加入的全平台可用追蹤記錄工具。這是一種精密的開放原始碼追蹤記錄專案,適用於 Android、Linux 和 Chrome。相較於 Systrace,這可提供資料來源的超集,並可在通訊協定緩衝區二進位檔訊息串中記錄各種長度的追蹤記錄。您可以在 Perfetto UI 中開啟這些追蹤記錄。

系統追蹤公用程式是一種 Android 工具,可將裝置活動儲存至追蹤檔。在搭載 Android 10 (API 級別 29) 以上版本的裝置中,追蹤檔會以 Perfetto 格式儲存,詳見本文件後續章節說明。而在搭載較舊 Android 版本的裝置中,追蹤檔則以 Systrace 格式儲存。

Systrace 是舊版平台提供的指令列工具,可在壓縮文字檔中記錄短時間內的裝置活動。此工具會產生一份結合 Android 核心資料的報表,例如 CPU 排程器��磁碟活動和應用程式執行緒。Systrace 支援所有 Android 平台版本,但裝置如果搭載 Android 10 以上版本,則建議使用 Perfetto。

Perfetto 追蹤記錄檢視畫面的螢幕截圖

圖 1:Perfetto 追蹤記錄檢視畫面範例,顯示與應用程式互動約 20 秒的情形。

Systrace 報表的螢幕截圖

圖 2. Systrace HTML 報表範例,顯示與應用程式互動五秒的情形。

這兩份報表可讓您概略瞭解 Android 裝置在特定期間內的系統處理程序。報表也會檢查擷取的追蹤記錄資訊,醒目顯示觀察到的問題,例如 UI 卡頓或高耗電量。

Perfetto 和 Systrace 可以互通:

系統追蹤指南

如要進一步瞭解系統追蹤工具,請參閱下列指南:

使用 CPU 分析器檢查 CPU 活動
說明如何在 Android Studio 中剖析應用程式的 CPU 用量和執行緒活動。
在裝置上擷取系統追蹤記錄
說明如何直接在任何執行 Android 9 (API 級別 28) 以上版本的裝置中擷取系統追蹤記錄。
在指令列擷取系統追蹤記錄
定義可以傳入 Systrace 指令列介面的不同選項和標記。
使用 ADB 執行 Perfetto
說明如何執行 perfetto 指令列工具擷取追蹤記錄。
快速入門導覽課程:在 Android 裝置上錄製追蹤記錄
外部說明文件,說明如何建構和執行 perfetto 指令列工具以擷取追蹤記錄。
快速入門導覽課程:在 Android 裝置上錄製追蹤記錄
Perfetto 網頁式追蹤記錄檢視器會開啟 Perfetto 追蹤記錄,並顯示完整的報表。您也可以使用舊版 UI 選項,在此檢視器中開啟 Systrace 追蹤記錄。
瀏覽 Systrace 報表
列舉一般報表的元素、顯示瀏覽報表時的鍵盤快速鍵,並說明如何辨識效能問題的類型。
定義自訂事件
說明如何套用自訂標籤至程式碼的特定部分,以便在 Systrace 或 Perfetto 輕鬆進行根本原因分析。