Android堆栈跟踪-错误显示在哪里?

Android堆栈跟踪-错误显示在哪里?,android,debugging,Android,Debugging,为什么我看不到在Android中引发运行时异常的方法?或者它在那里,而我不知道如何读取堆栈跟踪?在Flash中,很容易看到错误抛出的位置。在安卓系统中,这并不容易。也许是因为它抛出了一条不同的线索。我不知道。附件是SCENS。您能看到堆栈跟踪中抛出错误的位置吗 我从未使用过调试模式,但我使用的是LogCat视图。您可以在中激活它 窗口-->显示视图-->其他-->安卓-->日志猫 如果引发异常,日志将以红色显示。根据我的经验,真正的问题从来不会出现在异常的开头,而是出现在行之后 “由于” 在那

为什么我看不到在Android中引发运行时异常的方法?或者它在那里,而我不知道如何读取堆栈跟踪?在Flash中,很容易看到错误抛出的位置。在安卓系统中,这并不容易。也许是因为它抛出了一条不同的线索。我不知道。附件是SCENS。您能看到堆栈跟踪中抛出错误的位置吗


我从未使用过调试模式,但我使用的是LogCat视图。您可以在中激活它

窗口-->显示视图-->其他-->安卓-->日志猫

如果引发异常,日志将以红色显示。根据我的经验,真正的问题从来不会出现在异常的开头,而是出现在行之后

“由于”


在那里,您将看到在代码中的哪一行生成了异常,只需双击它就可以到达那里。

问题是您还没有让堆栈跟踪“展开”足够多。抛出异常时,您必须继续单步执行,直到看到异常出现在LogCat中(您应该能够在默认调试视图中看到)

例如,以下是我的代码:

public class HelloAndroid extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        throw new RuntimeException("Exception");
        //setContentView(R.layout.main);
    }
}
当异常最终一直抛出堆栈时,我将最终在我的LogCat窗口中看到:


如果您看这里,您可以在堆栈跟踪的顶部看到抛出的异常。然而,这并没有告诉你很多事情(除了发生了什么)。在LogCat窗口的底部,您可以看到实际原因是什么(一旦整个异常展开,您将看到)。在本例中,它发生在我的HelloAndroid.onCreate()方法中(我已经选择了该方法)。当您双击这一行时,您将看到您的代码以及实际发生异常的位置。

调试堆栈跟踪模式不会显示它。Logcat may.

这是一个很好的答案,但不是我问的问题。我询问了调试器堆栈跟踪,而不是日志cat。“你不能后退一步,通过LogCat。”musselwhizzle-它的工作原理是一样的。你只是在调试过程中走得不远。(又名,你在杂草丛中的某个地方——继续前进,你最终会到达断点。)