如何查看包含我的方法生成的帧的strackrace?

时间:2016-09-25 15:43:16

标签: java android debugging android-studio callstack

在Android Studio中,我在调试模式下运行应用程序,将其加载到模拟器中。然后我浏览应用程序点击UI,以便调用用户定义的方法以生成堆栈跟踪。我按下暂停,查看Debugger->线程和框架窗口,但它只显示一般平台特定的框架,而不是我的。 当我设置一个断点时,我的框架会出现,但是当我按下暂停时为什么它不起作用?为什么在此之前所有帧都不可见?

那么如何在不放置断点的情况下看到包括我的方法生成的帧的strackrace,如果不是为什么不可能呢?

1 个答案:

答案 0 :(得分:1)

尝试计算自用户与用户界面进行交互以及按下调试器的“暂停”按钮后经过的时间。这个时间足以留下你自己的方法并返回到框架代码,它已经调用了你的监听器/回调。

要查看堆栈跟踪,而不使用任何调试器,只需使用:

new Throwable("tada!!!").printStackTrace();

然后只检查logcat输出。或者,您可以存储Throwable并稍后打印其堆栈跟踪。要将其转换为字符串,请使用Log.getStackTraceString()