3

我一直在使用 Android 调试器时遇到令人沮丧的问题。我有时可以调试和单步调试代码,然后在代码的其他部分(最近在 try/catch 情况下),它下降到 catch {} 块,没有关于异常的信息,甚至没有记录。 e 它来安慰。请注意在屏幕截图中我如何进入 catch 块,但没有实时变量上下文,就好像它处于正常的内容辅助模式一样。观察表达式显示<error(s)_during_the_evaluation>。

例外

任何人都可以阐明我遇到的这些令人沮丧的问题吗?调试器在代码的其他部分正常工作的奇怪之处。

4

2 回答 2

2

Eclipse + ADT 因行为不一致而臭名昭著,这经常导致我只是确保Project > Build Automatically已检查,然后简单地启动Project > Clean....

有时即使这样也无济于事。所以我只是关闭 Eclipse 并重新启动它。大部分时间都在工作。

即使这样也无济于事,我会关闭 Eclipse,运行CCleaner并重新启动。每次都有效

奇怪但真实。

于 2012-08-21T01:40:57.900 回答
1

你不能总是相信你的调试器;这是一门不精确的科学。当有多个代码构建步骤(JVM 字节码、Dalvik 代码等)时尤其如此。调试器通常没有 100% 的必要信息来将代码中的位置反向工程回源代码行。

在上面的例子中,你的代码是否真的抛出了异常?听起来好像没有,调试器在突出显示的行上显示执行,即使它不会真正执行它。

我更倾向于相信代码的执行——如果Log.e()从未调用过,那么你根本就不会真正得到任何异常。

于 2012-08-21T00:48:47.667 回答