Android 調(diào)試系列-Dumpsys實戰(zhàn)篇

dumpsys命令可以dump系統(tǒng)各種服務(wù)的狀態(tài),因此在平常的開發(fā)過程中如果很好的掌握dumpsys的用法薛闪,會事半功倍智玻。

1. dumpsys命令用法

adb shell dumpsys ...

"usage: dumpsys\n"
            "         To dump all services.\n"
            "or:\n"
            "       dumpsys [-t TIMEOUT] [--help | -l | --skip SERVICES | SERVICE [ARGS]]\n"
            "         --help: shows this help\n"
            "         -l: only list services, do not dump them\n"
            "         -t TIMEOUT: TIMEOUT to use in seconds instead of default 10 seconds\n"
            "         --skip SERVICES: dumps all services but SERVICES (comma-separated list)\n"
            "         SERVICE [ARGS]: dumps only service SERVICE, optionally passing ARGS to it\n");

例如可以通過下面的方式來查詢當(dāng)前系統(tǒng)支持的所有dump服務(wù)寥假。

adb shell dumpsys -l

借鑒gityuan的博客總結(jié)了比較重要的服務(wù)對應(yīng)的類名和功能盲泛。

服務(wù)名 類名 功能
activity ActivityManagerService AMS相關(guān)信息
package PackageManagerService PMS相關(guān)信息
window WindowManagerService WMS相關(guān)信息
input InputManagerService IMS相關(guān)信息
power PowerManagerService PMS相關(guān)信息
batterystats BatterystatsService 電池統(tǒng)計信息
battery BatteryService 電池信息
alarm AlarmManagerService 鬧鐘信息
dropbox DropboxManagerService 調(diào)試相關(guān)
procstats ProcessStatsService 進(jìn)程統(tǒng)計
cpuinfo CpuBinder CPU
meminfo MemBinder 內(nèi)存
gfxinfo GraphicsBinder 圖像
dbinfo DbBinder 數(shù)據(jù)庫
服務(wù)名 功能
SurfaceFlinger 圖像相關(guān)
appops app使用情況
permission 權(quán)限
processinfo 進(jìn)程服務(wù)
batteryproperties 電池相關(guān)
audio 查看聲音信息
netstats 查看網(wǎng)絡(luò)統(tǒng)計信息
diskstats 查看空間free狀態(tài)
jobscheduler 查看任務(wù)計劃
wifi wifi信息
diskstats 磁盤情況
usagestats 用戶使用情況
devicestoragemonitor 設(shè)備信息

2. 一些常用場景

  1. 場景1
    當(dāng)你想要查看當(dāng)前手機(jī)屏幕正在顯示的頁面是哪個進(jìn)程的那個activity時,你可以輸入
    adb shell dumpsys activity top |grep mResumed=true -C 10

    WX20181122-181657@2x.png

    解讀:

    • grep mResumed=true代表查詢當(dāng)前處于mResumed=true的activity摔握,也就是正在前臺展示的Activity;
    • Activity為com.ss.android.article.news/.activity.MainActivity寄狼,進(jìn)程名為com.ss.android.article.news,進(jìn)程pid=20958;
  2. 場景2
    查詢某個App所有service狀態(tài)
    adb shell dumpsys activity s com.ss.android.article.news

    image.png

    解讀:

    • Service名稱為com.ss.android.article.news/com.ss.android.message.NotifyService
    • 運行在進(jìn)程pid=21484 進(jìn)程名為:com.ss.android.article.news:push, uid=u0a158
    • Intent信息 intent={cmp=com.ss.android.article.news/com.ss.android.message.NotifyService}
      當(dāng)然還有一些其他的信息氨淌,比如packageName例嘱,baseDir(apk路徑)狡逢,dataDir(數(shù)據(jù)存儲路徑),createTime拼卵,callerPackage等各種信息。
  3. 場景3
    查詢某個App的所有Activity狀態(tài)蛮艰,其中包括頁面的View Hierarchy信息
    adb shell dumpsys activity a com.ss.android.article.news

    image.png

    解讀:

    • TaskRecord{Hashcode #TaskId Affinity UserId=0 StackId=1 Activity個數(shù)=1}腋腮,從上圖中我們可以看到,taskid=3251,Affinity=com.ss.android.article.news,userid=0,stackid=1,activity為1
    • effectiveUid為當(dāng)前task所屬Uid壤蚜,mCallingUid為調(diào)用者Uid=u0a171,mCallingPackage為調(diào)用者包名:com.ss.android.article.news
    • realActivity為com.ss.android.article.news/.activity.SplashBadgeActivity
  4. 場景4:查詢某個App的進(jìn)程狀態(tài)
    adb shell dumpsys activity p com.ss.android.article.news

    image.png

解讀:

  • 格式:ProcessRecord{Hashcode pid:進(jìn)程名/uid}即寡,進(jìn)程pid=3938,進(jìn)程名為com.ss.android.article.news袜刷,uid=u0a171.
    該進(jìn)程中還有Services聪富,Connections, Providers, Receivers等信息.

當(dāng)然還有很多其他場景,這里就不一一舉例了著蟹,大家可以多多嘗試墩蔓,親自去體驗。

參考文章:
http://gityuan.com/2016/05/14/dumpsys-command/

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末萧豆,一起剝皮案震驚了整個濱河市奸披,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌涮雷,老刑警劉巖阵面,帶你破解...
    沈念sama閱讀 218,755評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異洪鸭,居然都是意外死亡样刷,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評論 3 395
  • 文/潘曉璐 我一進(jìn)店門览爵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來置鼻,“玉大人,你說我怎么就攤上這事拾枣∥执” “怎么了?”我有些...
    開封第一講書人閱讀 165,138評論 0 355
  • 文/不壞的土叔 我叫張陵梅肤,是天一觀的道長司蔬。 經(jīng)常有香客問我,道長姨蝴,這世上最難降的妖魔是什么俊啼? 我笑而不...
    開封第一講書人閱讀 58,791評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮左医,結(jié)果婚禮上授帕,老公的妹妹穿的比我還像新娘同木。我一直安慰自己,他們只是感情好跛十,可當(dāng)我...
    茶點故事閱讀 67,794評論 6 392
  • 文/花漫 我一把揭開白布彤路。 她就那樣靜靜地躺著,像睡著了一般芥映。 火紅的嫁衣襯著肌膚如雪洲尊。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,631評論 1 305
  • 那天奈偏,我揣著相機(jī)與錄音坞嘀,去河邊找鬼。 笑死惊来,一個胖子當(dāng)著我的面吹牛丽涩,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播裁蚁,決...
    沈念sama閱讀 40,362評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼矢渊,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了厘擂?” 一聲冷哼從身側(cè)響起昆淡,我...
    開封第一講書人閱讀 39,264評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎刽严,沒想到半個月后昂灵,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡舞萄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年眨补,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片倒脓。...
    茶點故事閱讀 40,040評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡撑螺,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出崎弃,到底是詐尸還是另有隱情甘晤,我是刑警寧澤,帶...
    沈念sama閱讀 35,742評論 5 346
  • 正文 年R本政府宣布饲做,位于F島的核電站线婚,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏盆均。R本人自食惡果不足惜塞弊,卻給世界環(huán)境...
    茶點故事閱讀 41,364評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧游沿,春花似錦饰抒、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至眯勾,卻和暖如春咒彤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背咒精。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留旷档,地道東北人模叙。 一個月前我還...
    沈念sama閱讀 48,247評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像鞋屈,于是被迫代替她去往敵國和親范咨。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,979評論 2 355

推薦閱讀更多精彩內(nèi)容