第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

全部開發(fā)者教程

Android Studio 編輯器教程

Android 分析工具介紹

前面的小節(jié)我們學(xué)習(xí)了 Android 模擬器工具。本小節(jié)我們學(xué)習(xí) Android 分析工具。

1. 概述

Android 分析工具位于以下位置:android_sdk/platform-tools/

主要的命令行工具有如下這些:

  • dumpsys
    一種在 Android 設(shè)備上運(yùn)行的工具,可提供有關(guān)系統(tǒng)服務(wù)的信息。

  • dmtracedump
    一種用于從跟蹤日志文件生成圖形化的調(diào)用堆棧圖的工具。

  • systrace
    借助該工具收集和檢查設(shè)備上在系統(tǒng)一級運(yùn)行的所有進(jìn)程的時(shí)間信息。

2. dumpsys

dumpsys 是一種在 Android 設(shè)備上運(yùn)行的工具,可提供有關(guān)系統(tǒng)服務(wù)的信息。我們可以使用 Android 調(diào)試橋 (ADB) 從命令行調(diào)用 dumpsys,獲取在連接的設(shè)備上運(yùn)行的所有系統(tǒng)服務(wù)的診斷輸出。此輸出通常比我們想要的更詳細(xì),因此我們可以使用下文所述的命令行選項(xiàng)僅獲取我們感興趣的系統(tǒng)服務(wù)的輸出。

2.1 語法

adb shell dumpsys [-t timeout] [--help | -l | --skip services | service [arguments] | -c | -h]

要獲取所連接設(shè)備的所有系統(tǒng)服務(wù)的診斷輸出,只需運(yùn)行 adb shell dumpsys。不過,這樣輸出的信息比我們通常想要的信息多得多。要使輸出更加可控,我們可以通過在命令中添加相應(yīng)服務(wù)來指定要檢查的服務(wù)。例如,下面的命令會提供輸入組件(如觸摸屏或內(nèi)置鍵盤)的系統(tǒng)數(shù)據(jù):

adb shell dumpsys input

如需查看可與 dumpsys 配合使用的系統(tǒng)服務(wù)的完整列表,請使用以下命令:

adb shell dumpsys -l

2.2 命令選項(xiàng)

命令選項(xiàng) 說明
-t 指定超時(shí)期限(秒)。
–help 輸出 dumpsys 工具的幫助文本。
-l 輸出可與 dumpsys 配合使用的系統(tǒng)服務(wù)的完整列表。
–skip 指定不希望包含在輸出中的服務(wù)。
service 指定希望輸出的服務(wù)。
-c 指定某些服務(wù)時(shí),附加此選項(xiàng)能以計(jì)算機(jī)可讀的格式輸出數(shù)據(jù)。
-h 對于某些服務(wù),附加此選項(xiàng)可查看該服務(wù)的幫助文本和其他選項(xiàng)。

3. dmtracedump

dmtracedump 是一種用于從跟蹤日志文件生成圖形化的調(diào)用堆棧圖的工具。此工具使用 Graphviz Dot 實(shí)用程序創(chuàng)建圖形化的輸出,因此我們必須先安裝 Graphviz,才能運(yùn)行 dmtracedump。如果尚未生成跟蹤日志并將其從連接的設(shè)備保存到本地計(jì)算機(jī),請參閱通過檢測我們的應(yīng)用生成跟蹤日志。dmtracedump 工具以樹形圖的形式生成調(diào)用堆棧數(shù)據(jù),其中每個(gè)節(jié)點(diǎn)表示一個(gè)方法調(diào)用。

3.1 語法

dmtracedump [-ho] [-s sortable] [-d trace-base-name] [-g outfile] trace-base-name

3.2 全局選項(xiàng)

命令選項(xiàng) 說明
-h 開啟 HTML 輸出
-o 轉(zhuǎn)儲跟蹤文件,而不是進(jìn)行剖析

3.3 命令選項(xiàng)

命令選項(xiàng) 說明
-d 以此跟蹤名稱作為參數(shù)運(yùn)行 diff。
-g 生成 outfile 輸出。
-s 可排序 JavaScript 文件所在位置的基址。
-t 在圖表中包含子節(jié)點(diǎn)的最低閾值。

4. systrace

systrace 命令會調(diào)用 Systrace 工具,我們可以借助該工具收集和檢查設(shè)備上在系統(tǒng)一級運(yùn)行的所有進(jìn)程的時(shí)間信息。

4.1 語法

python systrace.py [options] [categories]

例如,以下命令會調(diào)用 systrace 來記錄設(shè)備活動,并生成一個(gè)名為 mynewtrace.html 的 HTML 報(bào)告。此類別列表是大多數(shù)設(shè)備的合理默認(rèn)列表。

python systrace.py -o mynewtrace.html sched freq idle am wm gfx view \
    binder_driver hal dalvik camera input res

如需查看已連接設(shè)備支持的類別列表,請運(yùn)行以下命令:

python systrace.py --list-categories

4.2 全局選項(xiàng)

命令選項(xiàng) 說明
–help 顯示幫助消息。
–list-categories 列出已連接設(shè)備可用的跟蹤類別。

4.3 命令選項(xiàng)

命令選項(xiàng) 說明
-o 將 HTML 跟蹤報(bào)告寫入指定的文件。
–time 設(shè)置跟蹤設(shè)備活動時(shí)間。
–buf-size 設(shè)置跟蹤緩沖區(qū)大小。
–ktrace 跟蹤逗號分隔列表中指定的特定內(nèi)核函數(shù)的活動。
–app 啟用對應(yīng)用的跟蹤,指定為包含進(jìn)程名稱的逗號分隔列表。
–from-file 根據(jù)文件創(chuàng)建交互式 HTML 報(bào)告,而不是運(yùn)行實(shí)時(shí)跟蹤。
–serial 在已連接的特定設(shè)備上進(jìn)行跟蹤。
categories 包含指定的系統(tǒng)進(jìn)程的跟蹤信息,如 gfx 表示用于渲染圖形的系統(tǒng)進(jìn)程。

5. 小結(jié)

本節(jié)課程我們主要學(xué)習(xí)了 Android 分析工具。本節(jié)課程的重點(diǎn)如下:

  • 掌握如何使用 Android 分析工具。