下URLを参考にCPU Profilerを試してみました。
まずは新規プロジェクトを作成します。
Profiler画面は[View] > [Tool Windows] > [Profiler]と選択することで表示できます。
画面は最初は下のようになっています。
アプリを立ち上げると自動で測定開始してくれます。
測定しない場合、左上の+ボタンからセッションを選択します。
CPUを押すとCPU利用状況についてより詳しく見れるようになります。
より詳しく見たい場合、真ん中上部のRecordボタンで測定します。
測定停止したい所でStopボタンを押します。
Stopボタンを押すと下のように詳しく見れる画面に移動します。
テスト用に下のような重い処理を追加します。
view.findViewById<Button>(R.id.button_first).setOnClickListener { (0..100000).forEach { i -> (0..10000).forEach { j -> val r = i.toFloat() * j.toFloat() } } findNavController().navigate(R.id.action_FirstFragment_to_SecondFragment) }
上を追加して測定した結果は下の通りです。
右側の画面でTop Downタブを開くと具体的にどの処理が重いかまでを追いかける事ができます。