5

有人知道如何获得安卓设备的 FPS(每秒帧数)吗?

开发设置中有一个显示 FPS 的选项,但我想编写一个应用程序来做同样的事情。

它在内部调用surfaceflingerapi。

4

2 回答 2

5

在您的主Activity类中覆盖该onDraw()方法。调用super.onDraw()然后存储当前系统时间。计算delta_time当前调用 draw 和上一次调用 draw 之间的毫秒数。然后使用计算FPS1000 ms / delta_time ~ FPS

这是一些伪代码:

void onDraw(){
  super.onDraw()
  curTime = getTime();
  deltaTime = curTime - prevTime();
  aproxFps = 1000 / deltaTime;
  prevTime = curTime;
}
于 2012-05-07T18:33:07.790 回答
0

除非您对设备进行根植并以某种方式进入引擎盖,否则您无法做到这一点。

于 2012-06-29T18:09:47.567 回答