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 权限
  • 长时间测试建议使用电池充电器供电
  • 测试时尽量关闭其他无关应用以减少干扰
相关推荐
Rinleren5 小时前
企业级 MySQL 8 全流程指南:源码编译安装、主从同步、延迟复制、半同步与 MHA 高可用搭建
adb
sz-lcw10 小时前
MySQL知识笔记
笔记·mysql·adb
Java-xy²14 小时前
AlmaLinux release 9.6服务器离线安装MySQL8.0.27详细步骤
运维·服务器·adb
冰夏之夜影2 天前
【ADB】常用按键代码:adb的所有模拟按键
adb
肖永威2 天前
MuMu模拟器使用入门实践指南:从ADB连接到Frida动态分析
python·adb·frida·mumu
color_leo3 天前
虚拟机ubuntu用wifi adb 调试手机
ubuntu·adb·智能手机
维尔切3 天前
MySQL 主从复制
linux·运维·数据库·mysql·adb
浅拾光º3 天前
mysql重启,服务器计划重启,如何优雅地停止MySQL?
服务器·mysql·adb
mg6683 天前
智能电视玩机攻略_开启设备隐藏ADB 自由安装第三方应用
adb·智能电视
珊瑚礁的猪猪侠3 天前
ADB使用指南
python·adb·visual studio code