ADB Shell之手机性能测试

Connect 夜神模拟器for Android 4.4.2

打开模拟器-在CMD输入如下连接测试设备

adb connect 127.0.0.1:62001

你也可以连接自己的手机设备

开发者选项-启动USB调试,即可使用ADB,ADB需要环境搭建,百度教程吧

///////////////////////////////////////////手机性能测试///////////////////////////////////////////

1.启动时间:

查看系统app pkg name and activity name

adb shell "logcat | grep START"

start app启动App,W要大写,下面使用微信app做示范:

adb shell am start -W -n package/activity

adb shell am start -W -n com.tencent.mm/.app.WeChatSplashActivity

stop app停止App

adb shell am force-stop package

adb shell am force-stop com.tencent.mm

click back key to exit 到后台-冷退出

adb shell input keyevent 3

2. CPU

检查CPU用量

adb shell "dumpsys cpuinfo | grep com.tencent.mm"

3.流量监控

获取进程ID指令

adb shell ps | grep packageName

adb shell "ps | grep com.tencent.mm"

这个微信进程ID是 : 984

4.获取进程ID流量

检查接收+发送流量

( RECEIVE=接收,TRANSMIT=发送 ; eth0+eth1表各自的网卡,这表示有2个网卡)

adb shell cat /proc/pid/net/dev

adb shell cat /proc/984/net/dev

5.电量监控

可以看到电池信息状态level是当前电量;scale表示电池满量是100

adb shell dumpsys battery

切换非充电状态 (充电状态是2,也就是说非2是非充电状态)

adb shell dumpsys battery set status 1

6.内存测试

获取手机上apps的内存信息

adb shell top

主要检查list这2项:VSS+RSS

VSS (Virtual Set Size) : 虚拟耗用内存

RSS (Resident Set Size) : 实际使用物理内存

获取所有的apps内存用量然后以每秒一次的方式存一次

-d表示刷新频率 ;1表示1秒存一个到信息列表,请到当前CMD目录查看该文件meminfo

adb shell top -d 1 > meminfo

7.FPS&过度渲染

FPS=frames per second=每秒的帧数

过渡渲染:描述的是屏幕上的某个像素在同一帧的时间内被描绘了多少次

开发者选项-GPU呈现模式分析-在屏幕上显示为条形图

屏幕下方绿线表示基准线-超过绿色表示流畅度出现问题;在绿线以下表示比较正常;

勾选GPU过度绘制√

app边框和UI能明显看到颜色变化-

颜色越深-当前功能的页面层数越多

功能不在当前页面,是在其他页面的,如滑动后才显示的,颜色深表示这个界面过度绘制了;

////////////////////////////////////////////////////////////////////////////////////////////////////

原文地址:https://www.cnblogs.com/shinge/p/8367961.html

时间: 2024-08-29 06:49:39

ADB Shell之手机性能测试的相关文章

adb & adb shell 相关命令

在Mac上配置adb命令 在Mac OS中使用adb命令时,应进行变量配置,步骤如下: 一.终端中输入 cd ~ 二.输入touch .bash_profile 回车 touch:如果没有,则创建文件,如果有,更新一下文件时间 三.输入open -e .bash_profile open:打开文件 回车后会在TextEdit中打开这个文件(如果未配置过环境变量,应该是个空白文件).在文件中加如以下内容 export PATH=${PATH}:/Users/admin/Applications/a

adb shell的使用

在Android 真机调式数据库Sqlite时,用到adb shell 进行数据库的查看,但是可能遇到权限不足的情况, 可以在控制台 键入su 回车权限会由$变为#,获取root权限,前提是手机开启root权限声明, adb shell 进入手机, cd /data/data 进入路径, cd **********(你的项目包名,)/databases进入数据库 键入ls 查看数据库文件,一个.db文件,一个.db-journal文件, 键入sqlite3 数据库名打开数据库 .table 查询

安卓真机ADB shell添加slite3命令

安卓默认的数据库是SQLite,包括IOS好像也是的,在用ADB Shell时,用虚拟机的不仅可以直接访问android root目录.还能使用SQLITE 首先安装root你的安卓手机,然后下载一个SQLite3 这个可以从虚拟机的/system/xbin下导出,也可以 下载 ,下载后导入到手机 下载后在手机上安装RE文件管理器,授予root权限后可以进入sdcard目录下找到SQLite3文件,长按选择COPY或者MOVE,转到/system/xbin目录下,点击COPY HERE 或者MO

adb电脑桥梁手机步骤以及操作

一.连接模拟机 1.下载Android SDK并解压到自己的路径下(建议放在c盘) 2.设置系统环境变量:新建一个ANDROID_HOME,值为C:\sdk\android-sdk-windows\platform-tools 3.下载一个模拟器,启动. 4.进入cmd输入adb,出现英文,表示abd环境配置成功,如果不成功进入abd目录输入cmd,再输入abd. 5.执行adb connect 127.0.0.1:6555,开通一个通道 6.输入adb devices 7.输入adb shel

Android手机Mac OSX下执行adb shell提示device not found解决方法

某些Android手机Mac OS X下执行adb shell提示device not found,参考网上解决方法,以三星S3为例详述方法如下. 终端命令行下输入: #system_profiler SPUSBDataType USB: USB Hi-Speed Bus: Host Controller Location: Built-in USB Host Controller Driver: AppleUSBEHCI PCI Device ID: 0x0d9d PCI Revision I

【转】【Android测试技巧】01. root后adb shell默认不是root用户时,如何将文件放入手机系统中

http://blog.csdn.net/wirelessqa/article/details/8624208 有些机器root后通过adb shell 后,默认不是root用户,需要输入 su才能切换到root,这样在执行批处理或想将文件放到手机系统中会有问题: 方法一:命令行 1 adb shell "su -c 'sleep 1'" 2 adb start-server 3 adb push tcpdump /data/local/tcpdump 方法二:用工具 adbd Ins

Android 通过adb shell am broadcast发送广播

Android 通过adb shell am broadcast发送广播 adb shell am broadcast 后面的参数有: [-a <ACTION>][-d <DATA_URI>][-t <MIME_TYPE>] [-c <CATEGORY> [-c <CATEGORY>] ...] [-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...] [--ez <EXTRA_K

adb shell am

am(activity manager) 是管理activity的工具,可以启动activity.服务.发送广播.关闭窗口. 启动activity:adb shell am start [options] <INTENT> <INTENT>:可以在app的AndroidManifest.xml中得到 [options]:-n 类名,-a action,-d data,-m MIME-TYPE,-c category,-e 扩展数据,等)详情参见 http://developer.a

转adb Shell root 权限

因为开发需要,我经常会用到adb这个工具(Android Debug Bridge),我们都知道adb shell默认是没有root权限的,修改系统文件就很不方便了,adb push一个文件就提示Permission Denied.删除system下的文件也没有权限.其实有两种方法可以获取adb shell的root权限,这两种方法的前提都是手机已经root. 1.用su可以提权,直接执行su就会看到用户命令提示符由"$"变成了"#",如果手机没有root,会提示s