adb shell怎么用 procrank 怎么用

热门关键字Android procrank查看内存使用情况
使用adb shell procrank
手机中的sh是经过精简过的,有些手机可能没有 procrank 命令,可以使用genymotion模拟器,或是自己安装procrank命令。使用procrank时,命令行的输出入下图:
可以看到,在linux下表示内存的耗用情况有四种不同的表现形式:
VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
以Camera进程来说:
VSS通常不关注
RSS:Camera进程实际占用的物理内存加上所有(其他进程,比如Settings进程...)共享库占用的内存
PSS:Camera进程实际占用的物理内存加上自己(Camera进程)的共享库占用的内存
USS:Camera进程实际占用的物理内存
一般来说内存占用大小有如下规律:VSS &= RSS &= PSS &= USS
实际在统计查看某个进程内存占用情况的时候,看PSS是比较客观的。
(window.slotbydup=window.slotbydup || []).push({
id: '2467140',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467141',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467142',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467143',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467148',
container: s,
size: '1000,90',
display: 'inlay-fix'【图文】android adb shell常用脚本分析_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
android adb shell常用脚本分析
上传于||暂无简介
大小:346.00KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢本帖子已过去太久远了,不再提供回复功能。4551人阅读
android 调试方法(19)
在调试一些内存相关的问题时,我们通常需要实时打印出当前系统中所使用的内存信息。
下面提供两种方法来查看这些信息。
方式一,使用 adb shell dumpsys meminfo
使用示例:
C:\Users\Administrator&adb shell dumpsys meminfo
Applications Memory Usage (kB):
Total PSS by process:
35958 kB: system (pid 463)
30518 kB: com.bbk.launcher2 (pid 824)
26253 kB: com.android.systemui (pid 630)
20983 kB: com.android.settings (pid 7366)
10239 kB: com.android.phone (pid 706)
9986 kB: com.tencent.qqpimsecure (pid 893)
9326 kB: com.iqoo.ime.service (pid 685)
8962 kB: android.process.media (pid 796)
7418 kB: com.sohu.sohuvideo:log_service (pid 6695)
7140 kB: com.ting.mp3.oemc.android:pushservice_v1 (pid 6502)
7074 kB: com.mediatek.bluetooth (pid 716)
7062 kB: com.sina.weibo (pid 2429)
7033 kB: android.process.acore (pid 1150)
6288 kB: com.sina.weibo.servant (pid 5979)
5898 kB: com.eg.android.AlipayGphone (pid 3473)
5435 kB: com.android.ActivityNetwork (pid 6621)
5327 kB: com.tencent.mm (pid 6553)
5281 kB: com.android.bbkmusic (pid 1322)
4559 kB: com.netease.pris:push (pid 7126)
4445 kB: com.android.mms (pid 6463)
4392 kB: com.mediatek.mdlogger (pid 725)
4347 kB: com.baidu.map.location:remote (pid 843)
4275 kB: com.mediatek.mobilelog (pid 7063)
4254 kB: com.android.contacts (pid 857)
3993 kB: com.bbk.appstore (pid 7262)
3854 kB: com.mediatek.MediatekDM (pid 6281)
3667 kB: com.android.keychain (pid 7276)
3623 kB: com.baidu.map.location (pid 784)
3387 kB: com.mediatek.atci.service (pid 7110)
3359 kB: com.android.bbksoundrecorder (pid 746)
3265 kB: com.svox.pico (pid 7332)
3261 kB: com.android.defcontainer (pid 6448)
Total PSS by OOM adjustment:
35958 kB: System
35958 kB: system (pid 463)
63631 kB: Persistent
26253 kB: com.android.systemui (pid 630)
10239 kB: com.android.phone (pid 706)
7074 kB: com.mediatek.bluetooth (pid 716)
7033 kB: android.process.acore (pid 1150)
5281 kB: com.android.bbkmusic (pid 1322)
4392 kB: com.mediatek.mdlogger (pid 725)
3359 kB: com.android.bbksoundrecorder (pid 746)
29945 kB: Foreground
20983 kB: com.android.settings (pid 7366)
8962 kB: android.process.media (pid 796)
27841 kB: Perceptible
9986 kB: com.tencent.qqpimsecure (pid 893)
9326 kB: com.iqoo.ime.service (pid 685)
4275 kB: com.mediatek.mobilelog (pid 7063)
4254 kB: com.android.contacts (pid 857)
14255 kB: A Services
7140 kB: com.ting.mp3.oemc.android:pushservice_v1 (pid 6502)
3854 kB: com.mediatek.MediatekDM (pid 6281)
3261 kB: com.android.defcontainer (pid 6448)
30518 kB: Home
30518 kB: com.bbk.launcher2 (pid 824)
27087 kB: B Services
7418 kB: com.sohu.sohuvideo:log_service (pid 6695)
6288 kB: com.sina.weibo.servant (pid 5979)
5435 kB: com.android.ActivityNetwork (pid 6621)
4559 kB: com.netease.pris:push (pid 7126)
3387 kB: com.mediatek.atci.service (pid 7110)
41627 kB: Background
7062 kB: com.sina.weibo (pid 2429)
5898 kB: com.eg.android.AlipayGphone (pid 3473)
5327 kB: com.tencent.mm (pid 6553)
4445 kB: com.android.mms (pid 6463)
4347 kB: com.baidu.map.location:remote (pid 843)
3993 kB: com.bbk.appstore (pid 7262)
3667 kB: com.android.keychain (pid 7276)
3623 kB: com.baidu.map.location (pid 784)
3265 kB: com.svox.pico (pid 7332)
Total PSS by category:
145990 kB: Dalvik
44471 kB: Unknown
35557 kB: Other dev
24404 kB: .so mmap
14348 kB: .dex mmap
3830 kB: Other mmap
1214 kB: .apk mmap
524 kB: Native
424 kB: .ttf mmap
68 kB: Ashmem
32 kB: Cursor
0 kB: .jar mmap
Total PSS: 270862 kB
KSM: 0 kB saved from shared 0 kB
0 kB 0 kB volatile
方式二:使用 adb shell procrank 命令
使用示例:
C:\Users\Administrator&adb shell procrank
system_server
com.bbk.launcher2
com.android.systemui
com.android.settings
/system/bin/surfaceflinger
com.android.phone
com.tencent.qqpimsecure
/system/bin/mediaserver
com.iqoo.ime.service
android.process.media
com.sohu.sohuvideo:log_service
com.ting.mp3.oemc.android:pushservice_v1
com.mediatek.bluetooth
com.sina.weibo
android.process.acore
com.sina.weibo.servant
com.eg.android.AlipayGphone
com.tencent.mm
com.android.bbkmusic
com.android.ActivityNetwork
com.mediatek.mdlogger
com.netease.pris:push
com.android.mms
com.baidu.map.location:remote
com.android.contacts
com.mediatek.mobilelog
com.bbk.appstore
com.mediatek.MediatekDM
com.baidu.map.location
com.android.keychain
com.android.bbksoundrecorder
com.mediatek.atci.service
com.android.defcontainer
com.svox.pico
/system/bin/drmserver
/system/bin/bbk_em_svr
/system/bin/em_svr
/system/bin/atcid
/system/bin/atci_service
/system/bin/mtkbt
/system/bin/rild
/system/bin/mdpserver
/system/bin/netdiag
/system/bin/netd
/system/bin/mobile_log_d
/system/bin/mdpd
/system/bin/mtk_agpsd
/system/bin/vold
/system/bin/mdlogger
/system/bin/vivo_daemon
/system/bin/keystore
/system/bin/gsm0710muxd
/sbin/adbd
/system/bin/dm_agent_binder
/system/bin/debuggerd
/system/bin/sh
/system/bin/nvram_agent_binder
/system/bin/hald
/system/bin/mobile_log_d
/system/bin/netdiag
/system/bin/ccci_fsd
/system/bin/mobile_log_d
/system/bin/mobile_log_d
/system/bin/mobile_log_d
/system/bin/mtkGD
/sbin/ueventd
/system/bin/stp_dump3
/system/bin/dbus-daemon
/system/bin/installd
/system/bin/servicemanager
/system/bin/sh
/system/bin/ccci_mdinit
/data/data/com.tencent.qqpimsecure/files/athena_v2.dat
/system/bin/6620_launcher
/system/bin/mobile_log_d
RAM: 482092K total, 3732K free, 4052K buffers, 110608K cached, 476K shmem, 24624K slab
方式二中能看出当前系统总共有多少内存,有多少空闲,有多少buffer,缓存等信息
当前使用这两种方式的前提是 adb remount 能够成功。
可以通过 adb shell kill PIDNumber 来杀死你想杀死的后台进程来模拟某种 bug 的复现条件。
譬如 adb shell kill 630 就能杀死 com.android.systemui 这个进程,有兴趣的可以尝试一下,盯住手机屏幕看下有什么反应……
adb shell ps 可以查看当前终端中的进程信息
C:\Users\Administrator&adb shell ps
c0fa38 S /init
c00000 S kthreadd
c00000 S ksoftirqd/0
S migration/0
S sync_supers
c00000 S bdi-default
S cfg80211
S fsnotify_mark
c00000 D binder_watchdog
S trace mon
S g2d_workqueue
S mtk_vibrator
D pmic_thread_kth
c00000 D bat_thread_kthr
c000000 S mtk charger_hv_
S screen_update_k
S accdet_eint
S kworker/u:2
S acc_sensor_eint
S mmcqd/0boot0
S mmcqd/0boot1
c00000 S file-storage
c00000 D wdtk-0
c00000 D wdtk-1
c0fa38 S /sbin/ueventd
S jbd2/mmcblk0p4-
S ext4-dio-unwrit
c000000 S flush-179:0
S jbd2/mmcblk0p6-
S ext4-dio-unwrit
S jbd2/mmcblk0p5-
S ext4-dio-unwrit
S jbd2/mmcblk0p2-
S ext4-dio-unwrit
S pvr_timer
S mtk_stp_psm
S mtk_stp_btm
bf00000 S mtk_wmtd
S fm_timer_wq
S fm_eint_wq
cc8f74 S /system/bin/servicemanager
ffffffff 400bd700 S /system/bin/vold
bf091e48 40117f74 S /system/bin/ccci_fsd
ffffffff 40128d3c S /system/bin/ccci_mdinit
ca4ec8 S /system/bin/6620_launcher
c4bec8 S /system/bin/debuggerd
ffffffff 40055f74 S /system/bin/vivo_daemon
S /system/bin/mobile_log_d
ffffffff 400a3700 S /system/bin/netd
ffffffff 401d9084 S /system/bin/netdiag
5 ffffffff 400e0f74 S /system/bin/surfaceflinger
48 ffffffff 400dd098 S zygote
ffffffff 400e2700 S /system/bin/hald
ffffffff 40194f74 S /system/bin/drmserver
ffffffff 40123f74 S /system/bin/mediaserver
ffffffff 400fef74 S /system/bin/mdpserver
cd6a04 S /system/bin/mtkGD
bluetooth 112
c58ec8 S /system/bin/dbus-daemon
c04fd670 400edd3c S /system/bin/installd
c76a04 S /system/bin/keystore
ffffffff 4007dec8 S /system/bin/mtk_agpsd
cf6098 S /system/bin/stp_dump3
S /system/bin/atci_service
c13098 S /system/bin/atcid
ffffffff 4007af74 S /system/bin/dm_agent_binder
bluetooth 122
S /system/bin/mtkbt
c18f74 S /system/bin/mdpd
c9c700 S /system/bin/hscdtd007a
S /system/bin/em_svr
ffffffff 40150f74 S /system/bin/nvram_agent_binder
c86d3c S /system/bin/sh
S pvr_workqueue
ffffffff 400e1700 S /system/bin/gsm0710muxd
ffffffff 40144d3c S /system/bin/mdlogger
S /system/bin/rild
00 ffffffff 400dcf74 S system_server
c000000 S ksdioirqd/mmc2
80 ffffffff 400dde50 S com.android.systemui
bf00000 S tx_thread
c02d3c S /system/bin/logwrapper
cf5098 S /system/bin/wpa_supplicant
44 ffffffff 400dde50 S com.android.phone
40 ffffffff 400dde50 S com.vivo.motionrecognition
08 ffffffff 400dde50 S com.mediatek.bluetooth
c016f01c 4008ae50 S /system/xbin/mnld
88 ffffffff 400dde50 S com.mediatek.mdlogger
那么如何在代码中判断当前的硬件系统有多少的 RAM 呢?
使用下面代码可以奏效:
在 Framework &ProcessList.java 中有如下代码可用:
ProcessList() {
MemInfoReader minfo = new MemInfoReader();
minfo.readMemInfo();
mTotalMemMb = minfo.getTotalSize()/();
这个可以用于 app 层来适配不同内存配置的机型。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:790729次
积分:7475
积分:7475
排名:第2094名
原创:109篇
转载:68篇
评论:105条
(1)(1)(2)(5)(1)(1)(4)(4)(2)(5)(1)(1)(1)(1)(3)(4)(1)(2)(6)(3)(4)(2)(1)(7)(10)(2)(6)(7)(4)(1)(1)(7)(2)(4)(7)(2)(6)(11)(6)(12)(2)(1)(7)(8)(2)(2)(4)

我要回帖

更多关于 adb shell 命令 的文章

 

随机推荐