Android 通過adb shell命令查看內存,CPU,啟動時間,電量等信息


1、  查看內存信息

1)查看所有內存信息

命令:

dumpsys meminfo

 

例:

C:\Users\laiyu>adb shell

shell@android:/ $ dumpsys meminfo

dumpsys meminfo

Applications Memory Usage (kB):

Uptime: 80066272 Realtime: 226459939

 

Total PSS by process:

    90058 kB: com.tencent.mobileqq (pid 16731)

    57416 kB: system (pid 651)

    52052 kB: com.miui.home (pid 1121)

    …………(篇幅問題,略)

 

Total PSS by OOM adjustment:

   223177 kB: Persistent

               57416 kB: system (pid 651)

               50036 kB: com.android.deskclock (pid 1096)

…………

   252678 kB: Foreground

               90058 kB: com.tencent.mobileqq (pid 16731)

…………

    50944 kB: Visible

               20318 kB: com.miui.miwallpaper (pid 974)

…………

    90855 kB: Perceptible

               36448 kB: com.google.android.inputmethod.pinyin (pid 987)

…………

    39654 kB: A Services

               23320 kB: com.tencent.android.qqdownloader (pid 14080)

…………

 

    49659 kB: B Services

               20085 kB: com.tencent.mobileqq:qzone (pid 19646)

…………

   148413 kB: Background

               21457 kB: com.miui.weather2 (pid 14296)

…………

                3453 kB: com.miui.providers.datahub (pid 14651)

 

Total PSS by category:

   454627 kB: Dalvik

   137206 kB: Unknown

   100835 kB: .so mmap

    62670 kB: .dex mmap

    54208 kB: Other dev

    30258 kB: Other mmap

     8527 kB: .apk mmap

     4752 kB: .ttf mmap

     2216 kB: Ashmem

       60 kB: Cursor

       21 kB: .jar mmap

        0 kB: Native

 

Total PSS: 855380 kB

      KSM: 0 kB saved from shared 0 kB

           0 kB unshared; 0 kB volatile

 

2)查看某個包的內存信息

命令:

dumpsys pkg_name

 

例:

shell@android:/ $ dumpsys meminfo com.tencent.mobileqq > /mnt/sdcard/meminfo.txt

bileqq > /mnt/sdcard/meminfo.txt                                              <</span>

shell@android:/ $

 

查看導出結果:

 

Android <wbr>通過adb <wbr>shell命令查看內存,CPU,啟動時間,電量等信息

Android <wbr>通過adb <wbr>shell命令查看內存,CPU,啟動時間,電量等信息


具體輸出項含義請搜索網絡

 

2、  查看CPU信息

windows系統:

輸入命令:top -m 10 -s cpu(-m顯示最大數量,-s 按指定行排序),如下圖所示:

                             

參數含義:
PID  : progress identification,應用程序ID
S : 進程的狀態,其中S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值是負數 #THR : 程序當前所用的線程數 VSS : Virtual Set Size虛擬耗用內存(包含共享庫占用的內存) RSS : Resident Set Size實際使用物理內存(包含共享庫占用的內存) PCY : 前台(fg)和后台(bg)進程 UID : User Identification,用戶身份ID Name : 應用程序名稱

注意第一列的pid,使用pid值可以查看當前程序的內存使用情況。

       查看指定程序內存使用情況:

       輸入命令: dumpsys meminfo 3253,如下圖所示:
                          
參數含義:
dalvik : dalvik使用的內存
native : native堆上的內存,指C\C++堆的內存(android 3.0以后bitmap就是放在這兒) other : 除了dalvik和native的內存,包含C\C++非堆內存······ Pss : 該內存指將共享內存按比例分配到使用了共享內存的進程 allocated : 已使用的內存 free : 空閑的內存 private dirty : 非共享,又不能被換頁出去的內存(比如linux系統中為了提高分配內存速度而緩沖的小對象,即使你的進程已經退出,該內存也不會被釋放) share dirty : 共享,但有不能被換頁出去的內存

       使用ctrl + c,退出adb命令行。

 

法1:linux系統的top命令

 

例子:

C:\Users\laiyu>adb shell

shell@android:/ $ top -d 1 | busybox grep "com.tencent.mobileqq" > /mnt/sdcard/p

erformance.txt

encent.mobileqq" > /mnt/sdcard/performance.txt                                <</span>

^C

C:\Users\laiyu>

Android <wbr>通過adb <wbr>shell命令查看內存,CPU,啟動時間,電量等信息

 

注:直接使用grep可能報錯,提示找不到命令,這時如果busybox中有grep命令,可以如上,busybox grep

 

查看導出文件,如下,紅色框選部分即為cpu利用率

Android <wbr>通過adb <wbr>shell命令查看內存,CPU,啟動時間,電量等信息
 

方法2:通過dummpsys cpuinfo命令

命令:adb shell dumpsys cpuinfo

或者分成兩部走(參考 查看電量信息)

先adb shell,然后dumpsys cpuinfo

 

例:

C:\Users\laiyu>adb shell dumpsys cpuinfo | find "com.tencent.mobileqq"

  0.1% 16731/com.tencent.mobileqq: 0.1% user + 0% kernel / faults: 8 minor

  0% 16753/com.tencent.mobileqq:MSF: 0% user + 0% kernel

  0% 19646/com.tencent.mobileqq:qzone: 0% user + 0% kernel

 

3、  查看應用啟動時間

命令:

adb logcat -c && adb logcat -f /mnt/sdcard/up.txt -s tag

 

選項說明

-c   清屏

-f     指定運行結果輸出文件,默認輸出到標准設備(一般是顯示器

-s   設置默認的過濾級別為Silent

tag  僅顯示priority/tag

更多信息煩請參考 adb logcat -help

 

例:

先啟動app,然后執行如下命令

C:\Users\laiyu>adb logcat -c && adb logcat -f /mnt/sdcard/up.txt -s ActivityMana

ger

^C

C:\Users\laiyu>

 

查看輸出文件:

Android <wbr>通過adb <wbr>shell命令查看內存,CPU,啟動時間,電量等信息

 

備注:I/ActivityManager: I 代表優先級,ActivityManager代表tag

 

更清晰圖如下

Android <wbr>通過adb <wbr>shell命令查看內存,CPU,啟動時間,電量等信息


注:查找Dispalyed字眼,如上圖,可看到應用(com.tentcent.mobileqq)啟動時間(total +4s410ms),啟動頁停留展示時間(+835ms)

 

4、  查看電量信息

命令:

dumpsys battery

 

例:

shell@android:/ $ dumpsys battery

dumpsys battery

Current Battery Service state:

  AC powered: false

  USB powered: true

  status: 5

  health: 2

  present: true

  level: 100

  scale: 100

  voltage:4211

  temperature: 297

  technology: Li-poly

shell@android:/ $

 


免責聲明!

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



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