当我处于某个断点时,我正在寻找一种获取堆栈跟踪的方法。这可能吗?理想情况下,无需使应用程序崩溃并修改代码。我尝试使用 Android 调试器,但找不到任何有用的东西。
原因是有时我不确定应用程序是如何到达代码中的某个点的,因此我愿意接受其他有助于我跟踪方法调用的建议。
这可以在 Java 中完成:
new Throwable().printStackTrace();
Expressions
在 Eclipse 中,如果您在透视视图中使用该代码创建一个“表达式”,它将在视图中Debug
打印当前堆栈跟踪(即您的代码停止的断点的堆栈跟踪)Console
。
Log.e("AppName", "Debug exception", new Exception());
最简单的方法是抛出异常,立即捕获并使用printStackTrace()
.
您也可以尝试Thread.currentThread().getStackTrace()
它为您提供一个StackTraceElement[]
以防万一您除了拥有文本表示之外还想要其他任何东西printStackTrace()
。