自己用python写的性能专项小脚本原理和使用
来源:互联网 发布:淘宝搜索宝贝显示地址 编辑:程序博客网 时间:2024/05/01 19:29
我是github链接
下面放图:
主界面
内存直接打印以及csv的数据记录(图表是csv画的,如果直接输出图形可以用pychartdir)
流量的打印纸以及输出文件
流畅度用的是gfxinfo,提取出里面的绘制时间,并计算,要求是小于16ms,看得出我们这个项目是完全达不到的,不过已经在重构这个层级很多的界面了
好了,界面就是这样的,下面解释一下原理:
内存:
核心是dumpsys meminfo [pkg],通过读取Davik heap值;
并且在读取之前会手动触发GC,由于adb不支持gc命令,所以直接在代码里面添加了一个触发条件,见这里
流量:
android在3.0之后提供了一个xt_qtaguid的玩意,并且发现很多流量的统计都是从里面来的,于是就通过adb取得里面的数据
时延:
要求在开发者模式GPU呈现模式打开adb shell dumpsys gfxinfo命令,这样可以读取出3个数值,相加即为总绘制时间。Draw描述的是view绘制时间,Process描述的是控件树的测量布局绘制,即除单个view之外控件树的其他view绘制,execute则是硬件内展示到屏幕的时间,所以只要看最后的总时间小于16ms既可以判断流不流畅了。如果数值很大,可以用层级工具看一下界面,比如我上边的数据,在dump下hierarchy后可以发现层级最多有7层,普遍都是5 6层,怪不得会卡卡的。
好了,这就是基本原理了,具体实现都是一些简单的adb交互以及数据处理的过程,看下代码就明白了。
0 0
- 自己用python写的性能专项小脚本原理和使用
- 强迫自己养成习惯用 python 写一些小脚本
- 贴上自己的一个python写的去c语言注释的小脚本,以备后用
- python 备份文件的小脚本
- python用于url解码和中文解析的小脚本
- python用于url解码和中文解析的小脚本
- 最近写一个小脚本的体会
- 用Python实现的中英文互译的小脚本
- 测试主机性能的小脚本
- 这里简单介绍一个自己写的检测某个进程是否存在的bash小脚本
- 自己写了自动跳转到指定页面的js小脚本,分享一下
- 入侵渗透专用的python小脚本
- 一些实用的python小脚本
- 简单的python抓图小脚本
- python写的小巧的(14行有效代码)随机密码生成小脚本工具
- 今天写python的一个定时关机小脚本遇到的问题
- 一些python小脚本
- Python字典小脚本
- 前端工作总结
- 实现三列布局
- c++实验2
- Visual Studio 2013安装提示"此版本的Visual Studio需要安装了更新版本的windows的计算机"解决
- 算法竞赛前 准备文档
- 自己用python写的性能专项小脚本原理和使用
- 安卓简单手电筒开发
- window compile bitcoin
- [数据结构]Linked_stack
- 2016年腾讯实习生校园招聘-电面2
- 正确用dd测试磁盘写速度
- spring学习controller向视图传递参数1
- iOS 指纹解锁
- 下载aptana插件网址