1、procrank
执行procrank前需要先让终端获取到root权限
procrank [ -W ] [ -v | -r | -p | -u | -h ]
常用指令说明:
-v:按照 VSS 排序
-r:按照 RSS 排序
-p:按照 PSS 排序
-u:按照 USS 排序
-R:转换为递增[递减]方式排序
-w:只显示 working set 的统计计数
-W:重置 working set 的统计计数
-h:帮助
按照 VSS 降序排列输出内存快照:procrank –v
查看指定进程的内存占用状态,命令格式如下:procrank | grep [cmdline | PID]
通过跟踪内存的占用状态,进而分析进程中是否存在内存泄露场景。使用编写脚本的方式,连续输出进
程的内存快照,通过对比 USS 段,可以了解到此进程是否有内存泄露。
示例:输出进程名为 com.android.systemui 的应用内存占用状态,查看是否有泄露:
#!/bin/bash
while true;do
adb shell procrank | grep “com.android.systemui”
sleep 1
done
通过 adb 工具连接到设备后,运行此脚本:./test.sh
2、Dumpsys
查看Dumpsys帮助 dumpsys -help
查看Dumpsys包含服务列表 dumpsys -l
输出指定服务和应有进程的信息 dumpsys meminfo com.android.systemui
3、aapt (路径在sdk\build-tools下 如:D:\androi_sdk\build-tools\33.0.2)
获取apk的信息:aapt dump badging xxxx.apk > out

本文介绍了Android系统中几个实用的调试工具,包括procrank用于内存占用分析,Dumpsys查看系统服务和应用内存信息,aapt获取APK详细信息,以及last log和systrace进行日志记录和性能追踪。通过这些工具,开发者可以有效地排查问题和优化应用性能。

431

被折叠的 条评论
为什么被折叠?



