アプリのデバッグをする際には、しばしばスタックトレースを使って作業をする必要があります。
スタックトレースは、アプリがクラッシュした時のエラーや例外が原因で生成されます。
Thread.dumpStack()
のようなメソッドを使って、
アプリコード上の任意の位置のスタックトレースを出力することもできます。
接続した端末上やエミュレーター上でアプリをデバッグモードで実行している時、 図 1で示すように、Android StudioはAndroid モニターlogcatビュー 上にスタックトレースを強調表示で出力します。
図 1。 Android モニター logcat上のスタックトレース。
スタックトレースには、例外は発生したメソッド呼び出しの一覧と、そのファイル名と、呼び出しが発生した行番号が表示されます。
強調表示されたファイル名をクリックしてそのファイルを開き、メソッドの呼び出し元を調べることができます。
logcatウィンドウに表示されているスタックトレースの各行間を素早く移動するには、Up the stack trace
と Down the stack trace
をクリックします。
時には、デバッグに時にあなたが取得したスタックトレースではなく、第三者から提供されたスタックトレースを分析したいということもあるでしょう。 例えば、あなたはGoogle Play コンソールや その他Firebase Crash Reportingのようなツールを使って、 ユーザーの端末で生成されたスタックトレースを集めているかもしれません。
バグ報告から届いた外部のスタックトレースのビューを強調表示したりクリックできるようにするには、以下の手順に沿って作業します。:
メモ: あなたが見ているソースコードが、スタックトレースを生成したアプリと全く同じバージョンのものであることを確認してください。 コードのバージョンが異なる場合、ファイル名と行番号、スタックトレースでの呼び出し順とプロジェクトでの呼び出し順が一致しない可能性があります。
大量の外部スタックトレースを使って作業をする場合は、 Android Studioに新たなスタックトレースのシステムクリップボードを監視させ続けることで、 作業効率をあげることができます。: