知识的价值不在于占有,而在于使用。这篇文章主要讲述Android流畅度之帧率相关的知识,希望能为你提供帮助。
背景:app改版,人为感受卡顿,需要客观数据支撑观点。故,搜索各种性能指标,并理解之。(这是一篇摘要文......)
首先,明确人为感受的性能不好属于下面哪种:
1. 响应时间,界面跳转后响应时间;
2. 流畅度,界面操作时或动画展示的效果;
而流畅度的衡量指标又有几种:
1. 帧率fps(Frames Per Second,每秒钟填充图像的帧率)
2. 丢帧SF(Skipped frame)
3. 流畅度SM(SMoothness)(腾讯分享)
其中得到最广泛使用的还是帧率。以下详细说明之
回顾本源:Android如何绘制UI?
参考:显示性能指标、性能评测调优
帧率值在什么范围可认定为流畅?
理想状态每秒展示60帧时人眼感受不到卡顿,1000ms/60帧,即每帧绘制时间不应超过16.67ms。
帧率如何计算?
- adb shell dumpsys gfxinfo < PACKAGE_NAME> 参考:Testing Display Performance
- adb shell dumpsys SurfaceFlinger --latency < window_activity> 参考:Android性能测试之fps获取
参考:FPS计算方法比较
【Android流畅度之帧率】
实测补充说明:
- 前提需要打开设置中的GPU绘制选项
- 只记录执行adb命令最近的128帧信息
- 记录过程冷启动(杀进程),则之前的数据丢失
推荐阅读
- Android中基于Socket的网络通信
- Android动态改变布局
- 在Android上运用Anko和Kotlin开发数据库(SQLite从来不是一件轻松的事(KAD25))
- Android Studio升级到0.8.1后怎样设置字体大小()
- Android之asset文件夹下文件的使用
- Android 基于Netty的消息推送方案之概念和工作原理
- App Extension的脱壳办法
- 平面图和非平面图
- Windows的15款最佳免费重复文件查找和删除工具