RakkaRecorder - Free PerfRecorder
CN https://github.com/Goubata/RakkaRecorder/blob/main/README_CN.md
EN https://github.com/Goubata/RakkaRecorder/blob/main/README_EN.md
スマホのゲームとかアプリのパフォーマンスを計測して記録できる無料のAndroidアプリです。 FPSとかCPU・GPUの使用率・温度、バッテリー消費とかが全部まとめて見れます。 Root / Shizuku どちらでも動きます。
⚠️ ソースコードは非公開です。APKのみ配布しています。
ゲームしながらリアルタイムでFPSとか温度とかを画面に重ねて表示できて、 しかもその計測データを全部記録しておけるアプリです。
有料アプリに近いことを無料でできるようにしたくて作りました。
こんなことができます:
- ゲーム中にFPSをオーバーレイで表示
- CPU・GPU・RAM・バッテリーをリアルタイム計測
- 計測データをセッション単位でDB保存
- 保存したデータをグラフで確認(横軸に計測経過時間を表示)
- ジャンク率・スタッター率・フレームタイム安定度を自動集計
- CSVでエクスポートして外部ツールで分析
- 日本語 / English / 中文 の3言語に対応
| 項目 | 内容 |
|---|---|
| OS | Android 14以上 (API 34+) |
| 権限 | Root または Shizuku |
| その他 | オーバーレイ表示権限、使用履歴アクセス権限 |
Root か Shizuku のどちらかが必ず必要です。 ない場合はFPSとか一部の計測が正しく動きません。
Shizuku の使い方は Shizuku公式サイト を見てください。
アプリを初めて起動するとSetupダイアログが表示されます。
- Shizuku が起動中の場合 → 「Shizuku 権限を許可」ボタンが表示されます。タップして許可してください。
- Root が使用可能な場合 → 自動で検出して「✓ 使用可能」と表示されます。「OK」を押すと閉じます。
- どちらもない場合 → エラーカードが表示されます。先に Shizuku をインストール・起動してから再度お試しください。
- 「後で」を押すとスキップして先に進むこともできます。
- アプリを起動する
- ホーム画面で権限が正しく設定されているか確認する
- 「計測対象アプリ」で計測したいアプリを1つ選ぶ(選ばなくてもOK)
- 計測開始 ボタンを押す
- 計測したいアプリを開く
- 遊び終わったら RakkaRecorder に戻って 停止・保存 を押す
- 記録タブから結果を確認する
対象アプリを選択しておくと、そのアプリを開いた瞬間に自動で計測が始まります。 アプリを閉じた瞬間に計測が終了して自動保存されます。 ホームに戻ったり他アプリに切り替えたりしても途切れないようにしています。
計測対象アプリの選択は 1つだけ です(複数選択は非対応)。
計測開始ボタンを押したらずっと計測し続けます。 フォアグラウンドのアプリが変わったら自動でFPS計測対象が切り替わります。
- FPS(フレームレート)
- 総フレーム数
- 平均 / 最小 / 99パーセンタイル / 95パーセンタイル
- CPU使用率(全体)
- コアごとの使用率
- クラスターごとの周波数(Little / Big / Prime)
- CPU温度
- GPU使用率
- GPU周波数(Snapdragon / MediaTek 両対応)
- GPU温度
- RAM使用量(使用中・合計・空き・キャッシュ)
- バッテリー電流 (mA)
- バッテリー電圧 (mV)
- バッテリー残量 (%)
- バッテリー温度
- 消費電力 (mW)
- フレームあたり電力 (mW/fps)
- スキン温度
FPS計測は4段階のフォールバック方式になっています。 上から順に試して、取れたものを使います。
方式A: SurfaceFlinger --timestats (totalFrames差分)
→ Android 14の全アプリで一番精度が高い。基本これ。
方式B: dumpsys gfxinfo PROFILEDATA
→ HWUI描画のアプリ(一般アプリ系)でのフォールバック
方式C: SurfaceFlinger --latency
→ 古めのゲームとかBLAST未対応レイヤー向け
方式D: gfxinfo Total frames差分
→ 最終手段
方式Aが成功してる間は他の方式には落ちません。 画面が静止してFPSが0に向かう途中でスパイクが起きないように、 バッファの汚染対策もしています。
FPSの上限はディスプレイのリフレッシュレートに自動でキャップされます。 たとえば60Hz端末では最大60fps、120Hz端末では最大120fpsとして記録されます。
「平均FPSは高いのに体感がカクカクする」という状態を数値で確認できます。 記録詳細の 概要タブ と FPSタブ に表示されます。
FPSが平均FPSの85%を下回った秒の割合です。 この秒はコマ落ちやフリーズが発生していたと推定されます。
例:60Hz端末で fps < 51 になった秒の割合
| 値 | 目安 |
|---|---|
| 0〜10% | 良好 |
| 10〜20% | やや不安定(黄色) |
| 20%以上 | 問題あり(赤) |
連続するサンプル間のFPS変動が5fps超だった割合です。 コマ落ちまではいかないけど描画間隔が不均一でガクガクしている状態を検出します。
| 値 | 目安 |
|---|---|
| 0〜15% | 良好 |
| 15〜30% | やや不安定(黄色) |
| 30%以上 | 問題あり(赤) |
1000÷FPS で求めた推定フレームタイム(ms)の標準偏差です。 0に近いほど描画が安定しています。
※ これらはすべて1秒単位のFPS値からの近似計算です。 フレーム単位の精密な計測とは異なります。
設定画面から表示する項目を選べます。 表示位置(9箇所)やフォントサイズ、背景の透明度なども変えられます。
対応している表示項目:
- FPS
- CPU使用率・コアごと・周波数・温度
- GPU使用率・周波数・温度
- RAM使用量・詳細
- バッテリー電流・電圧・残量・温度
- 消費電力・フレーム電力
- スキン温度
- FPSデバッグ情報(開発者向け)
ダークモード対応・Material You対応しています(Android 12以降)。
計測したセッションがアプリ名・日時・時間・サンプル数で一覧表示されます。
タップするとタブ形式で詳細を見れます。
| タブ | 内容 |
|---|---|
| 概要 | FPS・CPU・RAM・電力の平均 + ジャンク/スタッター統計 |
| FPS | avg / min / 99th / 95th / 総フレーム数 + ジャンク/スタッター統計 + グラフ |
| CPU | 使用率・温度グラフ |
| クラスター | クラスターごとの周波数グラフ |
| GPU | 使用率・周波数・温度グラフ |
| RAM | 使用量グラフ |
| 電力 | 電力・電流・電圧・フレーム電力グラフ |
| 温度 | CPU・GPU・スキン・バッテリー温度グラフ |
| バッテリー | 残量・電流・温度グラフ |
グラフには min / avg / max が表示され、横軸には 計測経過時間 が表示されます。
共有ボタンからCSVを出力できます。 1行=1秒のサンプルで全項目が入っています。
Q. Root なくても使えますか?
A. Shizuku があれば使えます。どちらもない場合は一部の計測ができません。
Q. FPSが0のままです
A. Root/Shizuku の権限が正しく付与されているか確認してください。
dumpsys コマンドを実行できる権限が必要です。
Q. 電力の値がおかしいです
A. |I(mA)| × V(mV) ÷ 1,000,000 = W で計算しています。
端末によっては電流値の単位がμAだったりするので、値がずれる場合があります。
Q. Snapdragon と MediaTek どちらも使えますか?
A. はい。SoC を自動検出してGPUとCPUの計測パスを切り替えています。
MediaTek (Dimensity / Helio) は複数のGPU周波数パスを自動で試します。
Q. 計測対象アプリは複数選べますか?
A. 選べません。1つだけ選択できます。
Q. ジャンク率・スタッター率はどの程度信頼できますか?
A. 1秒単位のFPS値からの近似計算のため、参考値としてお使いください。
フレーム単位の精密な計測値とは異なります。
- このアプリは個人が趣味で作ったものです
- Root / Shizuku 操作を伴うため、使用は自己責任でお願いします
- 不具合や端末の破損等について責任は負えません
- ソースコードは非公開です。APKの改変・再配布は禁止します
Copyright © 2026 Rakkashin.
All Rights Reserved.
The source code is private.
Modification, redistribution, or reverse engineering of the APK is prohibited.