AndroidデバイスのFPS(1秒あたりのフレーム)を取得する方法について何か考えがある人はいますか?
FPSを表示する開発設定のオプションがありますが、同じことをするアプリを書きたいです。
内部でsurfaceflinger
api を呼び出します。
AndroidデバイスのFPS(1秒あたりのフレーム)を取得する方法について何か考えがある人はいますか?
FPSを表示する開発設定のオプションがありますが、同じことをするアプリを書きたいです。
内部でsurfaceflinger
api を呼び出します。
メインActivity
クラスでメソッドをオーバーライドしますonDraw()
。呼び出しsuper.onDraw()
て、現在のシステム時刻を保存します。delta_time
draw の現在の呼び出しと前回の draw の呼び出しの間のミリ秒を計算します。次に、以下を使用して FPS を計算します。1000 ms / delta_time ~ FPS
ここにいくつかの擬似コードがあります:
void onDraw(){
super.onDraw()
curTime = getTime();
deltaTime = curTime - prevTime();
aproxFps = 1000 / deltaTime;
prevTime = curTime;
}
これは、デバイスを root 化して何らかの方法で内部に侵入しない限り、できることではありません。