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能明显看到颜色变化-

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

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

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

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

  1. 使用adb shell 进入手机修改文件的权限

    1.将android的tools目录加入到path中,或者直接在adb.exe路径下启动cmd窗口2.adb shell 进入手机后,发现是 $ ,不是 # 号3.在进入shell后运行 su ,就可 ...

  2. adb & adb shell 相关命令

    在Mac上配置adb命令 在Mac OS中使用adb命令时,应进行变量配置,步骤如下: 一.终端中输入 cd ~ 二.输入touch .bash_profile 回车 touch:如果没有,则创建文件 ...

  3. Linux的各种命令(android adb shell)

    win+r 调出运行,输入CMD adb shell 进入手机的控制终端,相当于原生的Linux系统的各种操作. 当提示符为$符号,说明未获得超级管理员权限,输入su,可编程# adb kill-se ...

  4. 如何用Adb连接Android手机 & unable to connect to 192.168.1.100:5555的原因和解决方法

    利用adb来连接手机, 有两种方式: 1, wifi 2, usb. 1. 通过wifi, 利用adb来连接手机. 在pc的cmd中输入命令: adb connect 192.168.1.100 其中 ...

  5. Android:adb shell 命令详解

    安卓系统是基于Linux系统开发,也就支持常见的Linux的命令,这些命令都保存在手机“/system/bin”的目录下,通过adb shell 便可以调用这些命令. 进入“/system/bin”该 ...

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

    http://blog.csdn.net/wirelessqa/article/details/8624208 有些机器root后通过adb shell 后,默认不是root用户,需要输入 su才能切 ...

  7. 【安卓手机通用】android adb shell 命令大全

    浏览:3116 | 更新:2013-10-17 17:05 | 标签:安卓 android 一.[什么是shell] Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口.它是命 ...

  8. win7 cmd终端连接android手机运行adb shell脚本命令

    win7 cmd终端连接android手机运行adb shell脚本命令 (2013-03-22 20:13:57) 转载▼ 标签: android it shell 连接 linux 分类: 嵌入式 ...

  9. 获取手机安装的所有包名adb shell pm list packages

    获取所有已安装包的包名:adb shell pm list packages 查找:adb shell pm list packages|findstr suning

随机推荐

  1. 推荐几个不错的 java 教程和 HTML 教程

    Java入门第一季 Java入门第二季 2小时学会Spring Boot Java模板引擎之Freemarker HTML+CSS基础课程 H5+JS+CSS3实现七夕言情 jQuery基础系列

  2. git客户端安装后,访问不到gitsever解决办法

    1,运行 git Bash 客户端 $ cd ~/.ssh 如果没有此目录则创建一个 $ mkdir ~/.ssh 2,在.ssh目录下 $ ssh-keygen -t rsa -C "你的 ...

  3. CTF---密码学入门第七题 杯酒人生

    杯酒人生分值:10 来源: Veneno 难度:易 参与人数:2633人 Get Flag:790人 答题人数:963人 解题通过率:82% 使用古典密码 一喵星人要想喵星发送一段不知道干什么用的密码 ...

  4. Codechef:Path Triples On Tree

    Path Triples On Tree 题意是求树上都不相交或者都相交的路径三元组数量. 发现blog里没什么树形dp题,也没有cc题,所以来丢一道cc上的树形dp题. 比较暴力,比较恶心 #inc ...

  5. 0/1背包 dp学习~6

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1203 I NEED A OFFER! Time Limit: 2000/1000 MS (Java/O ...

  6. SPI、I2C、UART(转)

    UART与USART(转) UART需要固定的波特率,就是说两位数据的间隔要相等. UART总线是异步串口,一般由波特率产生器(产生的波特率等于传输波特率的16倍).UART接收器.UART发送器组成 ...

  7. PHP安全之webshell和后门检测

    基于PHP的应用面临着各种各样的攻击: XSS:对PHP的Web应用而言,跨站脚本是一个易受攻击的点.攻击者可以利用它盗取用户信息.你可以配置Apache,或是写更安全的PHP代码(验证所有用户输入) ...

  8. UE4 径向模糊radiu blur

    hlsl代码为: float2 ScreenMult = ; ; ] = {-0.08,-0.05,-0.03,-0.02,-0.01,0.01,0.02,0.03,0.05,0.08}; float ...

  9. ES6中export , export default , import模块系统总结

    最近在学习使用Webpack3的时候发现,它已经可以在不使用babel的情况下使用ES6的模块加载功能了. 说到ES6的模块加载功能,我们先复习一下CommonJS规范吧: 一  . CommonJS ...

  10. don\'t have permission access on this server听语音

    在网络上已经有很多的类型较多的框架,例如wamp,xmap等基于apache+mysql集成的框架,只要通过架包的方式,把相关的内容放到与这些的框架中后,启动服务器就可以执行架包内容,而在初始安装完成 ...