在开发者选项中有个“ GPU呈现模式分析(Profile GPU rendering,选择在adb shell dumpsys gfxinfo中)”功能,在开启这个功能后,系统就会记录保留每个界面最后128帧图像绘制的相关时间信息。在开启这个功能后,重新启动APP,滑动页面然后执行adb命令

adb shell dumpsys gfxinfo com.xiaomi.shop

(我用的是小米max2手机测试的小米商城首页。)

主要 注意Profile data in ms:下面的数据(如下图)

Draw:表示在Java中创建显示列表部分中,OnDraw()方法占用的时间。

Process:表示渲染引擎执行显示列表所花的时间,view越多,时间就越长

Execute:表示把一帧数据发送到屏幕上排版显示实际花费的时间。其实是实际显示帧数据的后台缓存区与前台缓冲区交换后并将前台缓冲区的内容显示到屏幕上的时间。

Draw + Process + Execute = 完整显示一帧 ,这个时间要小于16ms才能保证每秒60帧。

(吐槽:简书太烂了,粘贴数据全乱了,只能截图了。)

将上面的数据导入到excel表格中,生成堆积图,如下图:

堆积柱状图

图中可以清晰的看出在滑动时,只有少量的帧耗时超过16ms。基本达到了每秒60帧的要求。如果每帧耗时超过16ms,就要结合操作进行具体的优化了。

android自动帧率原理,Android 帧率计算及优化相关推荐

  1. Android 自动搜索频道,Android自定义收音机搜台控件RadioRulerView

    前言:像这类的自定义控件有非常多的开源项目,但还是没有找到我项目想要的,所以简单实现了一个,下面简单讲讲实现原理. 效果图: 实现思路: 首先画固定背景尺子,而实现这个则要计算刻度线的宽度.刻度线间的 ...

  2. Android自动伸展动画,android – 如何实现平滑的展开/折叠动画

    我指的是在这里找到的扩展/折叠动画代码. 虽然这样做不好,动画不顺利. 我做一些登录代码. public static void expand(final View v) { v.measure(Me ...

  3. android 自动 键盘,关于Android中的软键盘

    InputMethodService为我们的输入法创建了一个Dialog,并且将该Dialog的Window的某些参数(如Gravity)进行了设置,使之能够在底部或者全屏显示.当我们点击输入框时,系 ...

  4. android 自动静音模式,Android实现定时自动静音小助手

    定时静音助手的实现方法,供大家参考,具体内容如下 背景 突发奇想,刚好这学期刚上安卓课程,想设计一个时间助手.工作.学习中经常会被突如其来的电话所打扰,在上班,上课时这突如其来的铃声会惹来别人的反感, ...

  5. android自动更新demo,Android程序自动更新功能模块的实现方法【附完整demo源码下载】...

    本文实例讲述了Android程序自动更新功能模块的实现方法.分享给大家供大家参考,具体如下: 在程序启动的时候检测服务器上有没有对应版本更新,如果有更新,提示用户是否更新. 在程序启动的时候首先调用更 ...

  6. android自动创建快捷方式,Android开发之生成桌面快捷方式细则(原创)

    本文已独家授权 郭霖 ( guolin_blog) 公众号发布! 申明,标题里的快捷方式不是指开发人员使用频率极高的Ctrl+C和Ctrl+V:也不是IDE里Ctrl+D.Ctrl+F等常用快捷键.这 ...

  7. android自动夜间模式,Android实现日夜间模式的深入理解

    在本篇文章中给出了三种实现日间/夜间模式切换的方案,三种方案综合起来可能导致文章的篇幅过长,请耐心阅读. 1.使用 setTheme的方法让 Activity重新设置主题: 2.设置 Android ...

  8. android自动切换图片,Android应用中图片浏览时实现自动切换功能的方法详解

    先给最终效果图: 当我们在最下边的gallery中切换图片时,上面的大图片会自动切换,切换时有动画效果哦,很简单的一个程序,有待完善更多的功能! activity代码: package cn.com. ...

  9. android 自动挂断,android实现接通和挂断电话

    本文实例为大家分享了android实现接通和挂断电话的具体代码,供大家参考,具体内容如下 关键代码:[PhoneUtils类] package com.ebupt.phonerecorddemo.se ...

  10. android自动添加包,android nfc写入应用程序包名与网址 自动打开应用程序与网址...

    安卓手机大部分手机提供了NFC芯片   可以根据NFC传递数据   NFC卡与手机  手机与手机数据等交互  非常好的功能,这篇文章教大家如何向NFC卡或标签写入功能. 用法 :  点击包名   将N ...

最新文章

  1. 转:从零开始做app需要做的事情列表
  2. oracle函数,oracle编写函数
  3. 转 Cocos2d-x3.0模版容器详解之三:cocos2d::Value
  4. educoder 使用线程锁(lock)实现线程同步_Python并行编程(二):多线程锁机制利用Lock与RLock实现线程同步
  5. python怎么放音乐_python怎么播放音乐
  6. pandas 更改单元格的值_懂Excel轻松入门Python数据分析包pandas(二十四):连续区域...
  7. 运动世界校园显示服务器开小差,小学新生入学适应存在的问题及教育对策 ——以徐州市某小学为例...
  8. ASP.NET MVC 4 (六) 帮助函数
  9. 钉钉运营商服务器在哪,钉钉应用服务商
  10. 分支限界算法c语言_算法学习计划
  11. VSS 和VDS 交换机区别
  12. matlab z变换 差分,matlab z变换
  13. linux 播放mkv视频,Fedora 22 怎么播放 rmvb mp4 mkv 视频文件
  14. 7-4 人民币兑换 (10 分)C语言
  15. 月星当空,月光洒落树梢透进窗户,白的苦楚,寥寂随之上心头
  16. TDengine创始人陶建辉:基础软件不开源必死无疑
  17. ANDROID 绘制 三角形 XML
  18. visual画图软件_历史最全科技互联网类免费书籍、音乐、照片、软件、招聘信息整理汇总分享...
  19. 系统测试常用测试方法
  20. 编译高博ORBSLAM2_with_pointcloud_map,用TUM数据集测试。

热门文章

  1. i春秋网鼎杯第二场套娃题目writeup
  2. 用C++实现老鹰捉小鸡的小游戏之一
  3. 中国IT行业无领、白领和外国白领的一天比较(图)
  4. python done()函数_python之函数
  5. Jupyter Notebook安装
  6. chatGPT使用教程-提问的六个层次
  7. Batch Normalization函数详解及反向传播中的梯度求导
  8. java 新手入门电子书_java基础知识(适合新手入门).pdf
  9. Writing a Numeral
  10. web前端包括哪些技术?