其他分享
首页 > 其他分享> > 专项测试实战 | 如何测试 App 流畅度(基于 FPS 和丢帧率)?

专项测试实战 | 如何测试 App 流畅度(基于 FPS 和丢帧率)?

作者:互联网


FPS 和丢帧率可以在一定程度上作为 APP 流畅度的一项衡量标准,本文介绍利用 adb shell dumpsys gfxinfo 命令获取软件渲染加载过程的数据,进行计算从而获取测试结果。
在此之前,需要先了解屏幕展示绘制过程及 Android 的 VSync 机制
VSync 全称是 Vertical Synchronization(垂直同步),在 Android 4.1 中引入 Android 系统(同时引入的一个概念是 Triple Buffering)。
学计算机的经常听到 Buffer 的概念(生活中也碰到过很多),起到的都是一个类似的作用。用来协调两个不同速度的东西工作。
为什么会这样呢?因为 CPU/GPU 处理和屏幕展示的速度不一样但是却使用的是同一块内存。
怎么解决呢?可以将 CPU/GPU 处理和屏幕展示分开,CPU/GPU 在后台处理,处理完一帧的数据以后才交给屏幕展示(这样可能导致另外的问题是,如果 CPU/GPU 处理很慢,那么屏幕可能会一直展示某一帧的数据,下面主要分析这个问题的处理)。

上图是没有引入VSync 机制的处理流程。

在 FPS < 手机屏幕刷新率的情况下,一切运行完美。
VSync 机制下 Double Buffering 时 FPS > 手机屏幕刷新率的情况。

原文链接

⬇️ 点击“下方链接”,提升测试核心竞争力!https://qrcode.ceba.ceshiren.com/link?name=article&project_id=qrcode&from=bokeyuan&timestamp=1650617583

>>更多技术文章分享和免费资料领取

标签:FPS,展示,处理,测试,App,VSync,GPU,数据,CPU
来源: https://www.cnblogs.com/ceshiren2022/p/16179582.html