7

特定のブレークポイントにいるときにスタックトレースを取得する方法を探しています。これは可能ですか?理想的には、アプリケーションをクラッシュさせたり、コードを変更したりする必要はありません。Androidデバッガーで遊んでみましたが、なかなか役に立たなかったです。

その理由は、アプリケーションがコード内のある時点にどのように到達したかわからないことがあるため、メソッド呼び出しを追跡するのに役立つ他の提案を受け入れることができます。

4

3 に答える 3

14

これは Java で行うことができます。

new Throwable().printStackTrace();

Eclipse では、パースペクティブExpressionsビューでそのコードを使用して「式」を作成するとDebug、現在のスタック トレース (つまり、コードが停止したブレークポイントのスタック トレース) がConsoleビューに出力されます。

于 2012-08-09T13:40:24.153 に答える
4
Log.e("AppName", "Debug exception", new Exception());
于 2012-08-09T13:41:48.110 に答える
2

最も簡単な方法は、例外をスローし、すぐにキャッチして使用することprintStackTrace()です。

テキスト表現以外に何かしたい場合に備えてThread.currentThread().getStackTrace()、これを試すこともできます。StackTraceElement[]printStackTrace()

于 2012-08-09T13:45:04.630 に答える