android 速度检测工具,IT之家学院:如何测试Android应用启动速度
应用的启动速度是反映手机综合性能的重要指标,对于需要测试手机的性能,尤其是对需要在两台不同的手机之间进行对比测试的同学来讲,了解测试应用开启速度的正确方法,可大幅提高测试工作的效率。
最近,IT之家评测编辑 @芒果羊 同学正被“如何测试安卓应用的启动速度”这个问题困扰,希望这篇教程在帮到 @芒果羊 同学的同时,也能帮到更多的人。
事实上,要知道Android应用的启动速度并不难,我们只需捕获并分析Android系统日志,用这种方法测得的应用启动时间虽然精确,不过对于不经常接触Android系统日志的同学来说,实践起来未免不够简便直观。
那么今天,IT之家就和大家分享,如何简便直观又准确地测得Android应用的启动速度。
开始之前
在开始测试Android应用的启动速度之前,我们需要准备以下材料:
1、 Android系统的手机,系统版本4.4以上,USB开发调试需处于开启状态。
2、 一款Android应用(小编以IT之家Android客户端做演示)。
3、 一台电脑,能安装adb和KMPlayer的那种(小编以Windows 10系统的电脑做演示)。
4、 adb工具包。
下载地址:点击这里
5、 KMPlayer。
下载地址:点击这里
6、Microsoft Office Excel或者其他功能相近的软件。
原理说明
本文所给出的测试Android应用启动速度的方法,原理非常简单,我们只需将Android应用的启动过程使用屏幕内录的方式录制下来,通过可以逐帧播放视频的播放器,找到你点击某应用的图标的那个瞬间所在的帧,记录下该帧的时间(时间甲),再找到应用启动完成那个瞬间所在的帧,记录下该帧的时间(时间乙),用时间乙减去时间甲,所得的时间差,就是该应用启动所耗费的时间了。
录制屏幕
要计算Android应用的启动速度,我们首先需要将Android应用启动的过程录制下来(我们需要带有时间和帧信息的录屏视频),要录制屏幕,我们只需执行几行adb命令。
在执行adb命令之前,请保证你的手机与你的电脑已经可靠地连接,同时,你已经在电脑上安装了正确的adb驱动,准备就绪后,打开文件资源管理器,来到adb工具包所在的目录,按住键盘上的Shift键,再在该目录窗口的空白处单击鼠标右键,在上下文菜单中选择在此处打开命令窗口(或者打开PowerShell,若在PowerShell当中执行adb命令,则需在需要执行的命令前加上./),然后输入并执行以下命令:adb devices
若此时,你能在List of devices attached下看到你刚刚连接到电脑上的设备(小编这里为35c68e3f),则可以继续进行下一步操作。
输入并执行以下命令:adb shell screenrecord --bugreport /sdcard/launch.mp4
该命令被执行后,电脑和手机上不会有任何提示,不要着急,这是正常的,直接在手机上点击你要测试的Android应用的图标即可。
当应用启动完成,我们回到电脑上,使用快捷键Ctrl+C来结束屏幕录制。
这时,你将在手机内置存储(或存储卡)的根目录下看到一个名为launch.mp4的视频文件。
这就是我们刚刚录到的带有时间和帧信息的录屏视频,把这个文件拖出来,扔到你电脑的任何一个文件夹里(小编把它扔到了桌面上)。
MediaInfo显示,小编录到的视频帧率为45.325fps。
播放视频
接下来,我们将逐帧播放这个视频,市面上有很多可以逐帧播放视频的播放器,小编这里选用KMPlayer。
KMPlayer安装完成后,将鼠标光标移至我们刚刚录到的视频文件上,单击右键,选择打开方式-The KMPlayer。
打开视频后,默认并不是逐帧播放,而要逐帧播放十分简单,我们只需将视频暂停,将输入法切换到英文,并按键盘上的F键,每按一次F键,视频则前进一帧,当你前进到Android应用图标被点击的那个瞬间所在的帧,你将会在该图标上看到十分明显的点击回馈(小编的手机,当应用图标被点击时,该图标将缩小,接着,图标所在的宫格将下沉),记录下该帧所在的时间(录屏视频的左上角,白色字体,小编这里是15:29:28.349)。
然后继续播放,直到来到Android应用启动完成的那个瞬间所在的帧,记录下该帧所在的时间(小编这里是15:29:32.660)。
这时,我们得到了两个时间的值,分别是点击应用图标时的时间(15:29:28.349)和应用启动完成时的时间(15:29:32.660)。
计算时间差
我们知道,要测得Android应用启动所耗费的时间,只需算出15:29:32.660-15:29:28.349的结果即可,不过已经习惯了10进制的运算的我们,要进行时间的运算,可能有些吃力。
没关系,我们可以让Microsoft Office Excel来帮助我们计算。
打开Excel,选中A1、B1和C1单元格,点击鼠标右键,选择设置单元格格式。
切换至数字选项卡,在分类中选择自定义,在类型中输入mm:ss.000。
在A1单元格输入应用启动完成时的时间(因为打开一款应用所需的时间通常不会超过一个小时,表示小时的数值我们可以不输入,这里只需输入分钟、秒和毫秒即可,比如15:29:32.660,我们只需输入29:32.660)。
然后,在B1单元格输入点击应用图标时的时间(小编这里输入29:28.349)。
最后在C1单元格输入=A1-B1。
回车,此时,C1单元格中所显示的数值,就是你测得的Android应用的启动所花的时间。
以小编此次的测试结果为例,坚果Pro手机(高通骁龙626版本),打开IT之家客户端,耗时4秒311毫秒。
好的,以上就是本次教程的全部内容,更多常识科普,实用教程,敬请关注IT之家学院。
android 速度检测工具,IT之家学院:如何测试Android应用启动速度相关推荐
- android代码检测工具,大家好 给大家介绍一下 Android静态代码检测工具FireLine
FireLine介绍 随着时间的推移,项目的代码量越来越大,而紧张的项目开发周期使得开发人员进行单元测试的时间少之又少.我仔细看了下最近几轮测试中测试人员提的缺陷单,大部分的bug其实归根到底都是由空 ...
- android安全检测工具,梆梆安全 - 防止反编译|APP安全加固|应用加固|盗版监测
android安全检测工具,梆梆安全 - 防止反编译|APP安全加固|应用加固|盗版监测 https://dev.bangcle.com/ 业内专业的应用加固服务供应商 帮助数十万APP抵御破解风险, ...
- Android内存检测工具系列工具集
Android内存检测工具系列工具集 Android关于内存的工具不少,灵活地选择工具就显得特别重要.在此特别推荐分享涵盖一定初步和定位能力的工具,可以让我们一步到位地分析问题,提升效率. 在此列举几 ...
- android oom 检测工具,Android中UI检测、内存泄露、OOM、等优化处理
对Android整个优化分析,非常棒,下面是自己的积累笔记.可直接看原文. 界面检测工具: Fps: GPU检测, 使用Lint进行资源及冗余UI布局等优化 (很强大,布局的冗余) Memory检测G ...
- android 阻止自动唤醒,IT之家学院:如何免ROOT阻止Android应用唤醒
原标题:IT之家学院:如何免ROOT阻止Android应用唤醒 感谢IT之家网友 零更新 的原创投稿 此前有IT之家网友介绍了用空调狗弄死"良心"软件的教程,不过有时候也是不太方便 ...
- 移动安全之Android安全检测工具大全
原文地址:https://github.com/tanprathan/MobileApp-Pentest-Cheatsheet 补充[1]http://www.black-eleven.com/?p= ...
- 电脑如何测网速_【网络调试】网络速度检测工具有哪些?这五款工具让你随时掌控网速...
wifi测试软件有哪些?WiFi信号和声音一样,强弱都是可以测量的,检测WiFi的方法有很多,作为普通的家庭用户,我们有时需要测试WiFi的速度.信号强度.周围WiFi干扰等等,那么wifi信号如何检 ...
- Android 性能指标检测工具
2019独角兽企业重金招聘Python工程师标准>>> Android常见问题 内存泄漏:不使用的内存空间(对象)一直被引用着没有得到释放. 内存抖动:短时间内大量创建对象又在短时间 ...
- Android 内存检测工具
所谓内存泄漏,是指本该被回收的内存由于某种原因绕开了GC回收算法,从而导致该内存无法被有效数据使用而使得总内存减小的情况. 内存泄漏会导致内存消耗的增加,大量的消耗会使得APP OOM,特别是在一些内 ...
最新文章
- window 远程访问本地centos/redhat虚拟机上jupter notebook 配置方法
- Python-form表单标签
- 241. Different Ways to Add Parentheses
- Go36-13-结构体及其方法
- python车牌识别系统开源代码_北京百万庄车牌识别的软件人气火爆
- 特斯拉,谁给你的勇气在中国玩双标
- 蜗牛学院:程序员最值得看的12部电影
- Android实战开发--制作圆形头像(简易篇)
- Codeforces Contest 1138 problem B Circus —— 死亡1700,暴力
- Sublime Text3插件安装(经典)
- EasyPusher安卓Android手机直播推送之MediaCodec 硬编码H264格式
- Python合并PDF
- python合并pdf_实用 | 手把手教你用Python分割与合并PDF
- 级联选择器el-cascader处理复杂数据(四层、五层数据),回显部门以及部门下的人员
- Adam学习25之读取sam生成的alignmentRecord含recordGroupDictionary
- Ubuntu18.04更改国内镜像源(阿里云、网易、清华、中科大)
- antd Table设置固定高度
- html5魔塔存档模块,魔塔世界完整版源码
- Excel 代码编写 统一去掉单元格左上角的三角符号
- 关于office2016与visio2016冲突问题的解决方案
热门文章
- Linux 牛书推荐:《Linux网络编程》
- 理解ASP.NET中的三层结构
- 企业管理软件随想-透视-包容,无形思想-有形方便
- Win32的虚拟内存分配函数
- 精通webpack的5大关键点
- 划重点:微信小程序1月9日正式上线
- cass怎么把块打散命令_分解cass高程点即属性块
- githup用户名密码怎么看_MacBook Pro 开机密码忘记解决方法
- 监督学习 | 线性回归 之多元线性回归原理及Sklearn实现
- Windows10/11安装Linux子系统Ubuntu 20.04LTS,轻松使用生信软件,效率秒杀虚拟机