adb性能测试命令

一.CPU性能监控

1.1查看所有进程CPU使用率

bash 复制代码
adb shell top -n 1

其中-n 1表示只执行一次(非实时),结果中的%CPU列显示各进程CPU占用率

1.2 查看特定应用的CPU使用率

bash 复制代码
adb shell top -n 1 | grep <package>

替换<PACKAGE_NAME> 为应用包名 (如com.example.app)

1.3 获取应用 CPU 使用率百分比

bash 复制代码
adb shell dumpsys cpuinfo | grep <package_name>

输出包含TOTAL字段,显示应用占用的CPU时间百分比

二.内存性能监控

2.1 查看系统内存总体使用情况

bash 复制代码
adb shell free

显示总内存、已用内存、空闲内存等信息

2.2 查看应用内存占用(PSS 值)

bash 复制代码
adb shell dumpsys meminfo <PACKAGE_NAME>

PSS(Proportional Set Size)是应用实际占用的物理内存

2.3 获取应用堆内存信息

bash 复制代码
adb shell dumpsys meminfo <PACKAGE_NAME> | grep "Heap"

关注Heap Size(堆总大小)和Heap Alloc(已分配堆内存)

三.网络性能监控

3.1 查看应用网络流量

bash 复制代码
adb shell cat /proc/net/xt_qtaguid/stats | grep <UID>

显示所有网络连接状态(TCP/UDP)

3.2 使用netstat查看网络连接

bash 复制代码
adb shell netstat

3.3 测试网络延迟(ping)

bash 复制代码
adb shell ping -c 5 www.google.com

-c 5表示发送 5 个数据包

四.电量消耗监控

4.1 启用电池统计

bash 复制代码
adb shell dumpsys batterystats --reset
# 执行测试操作后...
adb shell dumpsys batterystats > batterystats.txt

分析batterystats.txt文件可查看应用耗电情况

4.2 获取电池当前状态

bash 复制代码
adb shell dumpsys battery

显示电池电量、温度、状态(充电 / 放电)等

五.GPU性能监控

5.1 启用 GPU 呈现模式分析

bash 复制代码
adb shell setprop debug.hwui.profile true
adb shell dumpsys gfxinfo <PACKAGE_NAME>

输出包含每帧渲染时间,用于分析 UI 卡顿问题

5.2 查看 GPU 渲染直方图

bash 复制代码
adb shell dumpsys gfxinfo <PACKAGE_NAME> framestats

生成详细的帧统计数据

六.综合性能分析

6.1 使用 systrace(需 Python 环境)

bash 复制代码
# 在PC上执行
python <ANDROID_SDK>/platform-tools/systrace/systrace.py -t 10 -a <PACKAGE_NAME> gfx view wm am pm

生成 HTML 格式的系统性能跟踪报告(包含 CPU、GPU、UI 等)

自动化性能测试脚本示例

以下是一个简单的 Shell 脚本,用于循环采集应用的 CPU 和内存数据:

bash 复制代码
#!/bin/bash

PACKAGE="com.example.app"
OUTPUT_FILE="performance_data.csv"
INTERVAL=5  # 采样间隔(秒)
DURATION=300  # 总测试时长(秒)

echo "Time,CPU(%),Memory(KB)" > $OUTPUT_FILE

for ((i=0; i<$DURATION; i+=$INTERVAL)); do
    TIMESTAMP=$(date +%H:%M:%S)
    CPU=$(adb shell top -n 1 | grep $PACKAGE | awk '{print $9}')
    MEM=$(adb shell dumpsys meminfo $PACKAGE | grep TOTAL | awk '{print $2}')
    
    echo "$TIMESTAMP,$CPU,$MEM" >> $OUTPUT_FILE
    sleep $INTERVAL
done

echo "性能数据已保存至: $OUTPUT_FILE"

将上述脚本保存为perf_test.sh,修改PACKAGE为目标应用包名,然后执行:

bash 复制代码
chmod +x perf_test.sh
./perf_test.sh

注意事项

  • 需先将设备通过 USB 连接电脑并开启 USB 调试模式
  • 部分命令需要设备 Root 权限
  • 长时间测试建议使用电池充电器供电
  • 测试时尽量关闭其他无关应用以减少干扰
相关推荐
91刘仁德11 小时前
MYSQL 事务原理及使用
android·mysql·adb
笑梦无境3 天前
mysql的安装及配置(3)
数据库·mysql·adb
!chen3 天前
数据库主从有延迟怎么处理
数据库·adb
2501_915106325 天前
安卓抓包软件2026,免证书抓包 应用层抓包 代理抓包全解析
网络协议·计算机网络·网络安全·ios·adb·https·udp
ymwlchina5 天前
华为手机P40 Plus如何通过adb无线连接
adb·华为·智能手机
00后程序员张6 天前
Android证书绑定抓包失败?Android SSL Pinning绕过实战指南
android·网络协议·计算机网络·网络安全·adb·https·ssl
九皇叔叔8 天前
MySQL ORDER BY 性能优化详解:Using filesort、联合索引、ASC/DESC 与覆盖索引
android·adb
firstacui9 天前
Mysql调优
android·mysql·adb
醉颜凉9 天前
MySQL 8 忘记 root 密码?这两种方法帮你轻松解决
数据库·mysql·adb