任何人都知道如何获得Android设备的FPS(每秒帧数)?
开发设置中有一个选项可以显示FPS,但我想编写一个应用程序来执行相同操作。
它在内部调用surfaceflinger
api。
答案 0 :(得分:5)
在您的主Activity
类中覆盖onDraw()
方法。调用super.onDraw()
然后存储当前系统时间。计算当前绘制调用和之前绘制调用之间的delta_time
毫秒。然后使用1000 ms / delta_time ~ FPS
这是一些伪代码:
void onDraw(){
super.onDraw()
curTime = getTime();
deltaTime = curTime - prevTime();
aproxFps = 1000 / deltaTime;
prevTime = curTime;
}
答案 1 :(得分:0)
这不是你可以做的事情,除非你以某种方式根据设备并进入引擎盖。