簡體   English   中英

使用 adb 命令測量 Android 應用程序的啟動時間

[英]Measure launch time of an android app using adb commands

我想測量啟動時間(從應用程序啟動開始到應用程序第一次查看渲染完成)。 是否有任何 adb 命令/adb 命令的組合可以實現這一點。

我不確定通過 adb 命令是否可以實現您想要的功能,但是您可以使用 Android SDK 安裝的 platform-tools/systrace 文件夾中包含的 systrace 工具。

Systrace 工具可以從 Eclipse、Android Studio、Android 設備監視器甚至命令行中的 Android 開發人員工具 (ADT) 運行。

要運行 Systrace 用戶界面:

使用 Eclipse

  1. 在 Eclipse 中,打開一個 Android 應用程序項目。
  2. 通過選擇 Window > Perspectives > DDMS 切換到 DDMS 透視圖。
  3. 在設備選項卡中,選擇要運行跟蹤的設備。 如果未列出任何設備,請確保您的設備已通過 USB 電纜連接並且在設備上啟用了調試。
  4. 單擊“設備”面板頂部的 Systrace 圖標以配置跟蹤。
  5. 設置跟蹤選項並單擊確定開始跟蹤。

使用 Android Studio

  1. 在 Android Studio 中,打開一個 Android 應用程序項目。
  2. 通過選擇工具 > Android > 監視器打開設備監視器。
  3. 在設備選項卡中,選擇要運行跟蹤的設備。 如果未列出任何設備,請確保您的設備已通過 USB 電纜連接並且在設備上啟用了調試。
  4. 單擊“設備”面板頂部的 Systrace 圖標以配置跟蹤。
  5. 設置跟蹤選項並單擊確定開始跟蹤。

使用設備監視器

  1. 導航到您的 SDK tools/ 目錄。
  2. 運行監控程序。
  3. 在設備選項卡中,選擇要運行跟蹤的設備。 如果未列出任何設備,請確保您的設備已通過 USB 電纜連接並且在設備上啟用了調試。
  4. 單擊“設備”面板頂部的 Systrace 圖標以配置跟蹤。
  5. 設置跟蹤選項並單擊確定開始跟蹤。

命令行使用

對於運行 Android 4.3(API 級別 18)及更高版本的設備與運行 Android 4.2(API 級別 17)及更低版本的設備,Systrace 工具具有不同的命令行選項。 以下部分描述了每個版本的不同命令行選項。

從命令行運行 Systrace 的一般語法如下。

$ python systrace.py [options] [category1] [category2] ... [categoryN]

Android 4.3 及更高版本的選項

當您在運行 Android 4.3 及更高版本的設備上使用 Systrace 時,您必須至少指定一個跟蹤類別標簽。 這是一個示例執行運行,它設置跟蹤標記並從連接的設備生成跟蹤。

$ cd android-sdk/platform-tools/systrace
$ python systrace.py --time=10 -o mynewtrace.html sched gfx view wm

提示:如果要在跟蹤輸出中查看任務名稱,則必須在命令參數中包含 sched 類別。

Android 4.2 及更低版本的選項

在運行 Android 4.2 及更低版本的設備上使用命令行上的 Systrace 通常是一個兩步過程。 您必須首先設置要捕獲的跟蹤標記,然后運行跟蹤。 這是一個示例執行運行,它設置跟蹤標記並從連接的設備生成跟蹤。

$ cd android-sdk/platform-tools/systrace
$ python systrace.py --set-tags gfx,view,wm
$ adb shell stop
$ adb shell start
$ python systrace.py --disk --time=10 -o mynewtrace.html

您可以從 adb logcat 測量應用程序的啟動時間。 您可以檢查 logcat 顯示的活動開始和活動的打印件,注意它們之間的時間差以測量啟動時間。

adb logcat -vthreadtime | grep "start"
adb logcat -vthreadtime | grep "Displayed"

或者

您可以使用以下命令啟動應用程序並從其輸出中查找時間:adb shell am start -W

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM