利用 Android Profiler 測量應用性能


 

Android Studio 3.0 采用全新的 **Android Profiler ** 窗口取代 Android Monitor 工具。 這些全新的分析工具能夠提供關於應用 CPU、內存和網絡 Activity 的實時數據。 您可以執行基於樣本的函數跟蹤來記錄代碼執行時間、采集堆轉儲數據、查看內存分配,以及查看網絡傳輸文件的詳情。

要打開 Android Profiler 窗口,請按以下步驟操作:

  1. 點擊 View > Tool Windows > Android Profiler(也可以點擊工具欄中的 Android Profiler )。
  2. 在 Android Profiler 窗口頂部(如圖 1 所示),選擇您想要分析的設備 1 和應用進程 2。

    如果您通過 USB 連接了某個設備但該設備未在設備列表中列出,請確保您已啟用 USB 調試

     

    如果您使用的是 Android Emulator 或已取得 root 權限的設備,Android Profiler 將列出所有正在運行的進程,即使這些進程可能無法調試。 當您發布可調試應用時,將會默認選擇此進程。

Android Profiler 目前可顯示共享時間線視圖(圖 1),其中包括帶有 CPU、內存和網絡使用信息實時圖表的時間線。 分析器窗口還包含時間線縮放控件 3、實時更新跳轉按鈕 4,以及顯示 Activity 狀態、用戶輸入 Event 和屏幕旋轉 Event 的 Event 時間線5。

當您啟動 Android Profiler 后,它會持續收集分析數據,直至您斷開設備連接或點擊 Close

圖 1. Android Profiler 共享時間線視圖 此共享時間線視圖只顯示時間線圖表。 要使用詳細分析工具,請點擊與您想查看的性能數據對應的圖表。 例如,要使用工具查看堆數據和跟蹤內存分配,可點擊 MEMORY 圖表。 以下鏈接頁面介紹了各個對應分析器窗口的更多信息。

但並不是所有分析數據均默認可見。 如果您看到一條消息,顯示“Advanced profiling is unavailable for the selected process”,則需在運行配置中啟用高級分析 。

要詳細了解各個分析工具,請參閱以下內容:

啟用高級分析

要顯示高級分析數據,Android Studio 必須在您編譯后的應用中插入監控邏輯。 高級分析工具提供的功能包括:

  • Event 時間線(所有分析器窗口中均有)
  • 分配對象數量(Memory Profiler 中)
  • 垃圾回收 Event(Memory Profiler 中)
  • 有關所有傳輸的文件的詳情(Network Profiler 中)

要啟用高級分析,請按以下步驟操作:

  1. 選擇 Run > Edit Configurations
  2. 在左側窗格中選擇您的應用模塊。
  3. 點擊 Profiling 標簽,然后勾選 Enable advanced profiling

現在重新構建並運行您的應用,即可獲取完整的分析功能。 但請注意,高級分析會減緩您的構建速度,所以僅當您想要開始分析應用時才啟用此功能。

注:對於原生代碼,不可使用高級分析功能。 如果您的應用是純原生應用(不含 Java Activity 類),則不可使用高級分析功能。 如果您的應用使用了 JNI,則可使用部分高級分析功能,例如 Event 時間線、GC Event、Java 分配對象和基於 Java 的網絡 Activity,但不能檢測基於原生的分配和網絡 Activity。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM