调试Android RuntimeException-在我的代码执行之前

调试Android RuntimeException-在我的代码执行之前,android,Android,我对Java并不陌生,但对Android平台来说是个新手。我发现平台的一个缺点是对运行时崩溃的有意义的反馈。在应用断点的用户代码中很好,但我在第一次运行时遇到了一个崩溃,这阻止了我的项目启动,我找不到跟踪它的方法。有人能解释一下吗 DalvikVM[localhost:8626] Thread [<1> main] (Suspended (exception RuntimeException)) ActivityThread.performLaun

我对Java并不陌生,但对Android平台来说是个新手。我发现平台的一个缺点是对运行时崩溃的有意义的反馈。在应用断点的用户代码中很好,但我在第一次运行时遇到了一个崩溃,这阻止了我的项目启动,我找不到跟踪它的方法。有人能解释一下吗

DalvikVM[localhost:8626]    
    Thread [<1> main] (Suspended (exception RuntimeException))  
        ActivityThread.performLaunchActivity(ActivityThread$ActivityRecord, Intent) line: 2585  
        ActivityThread.handleLaunchActivity(ActivityThread$ActivityRecord, Intent) line: 2679   
        ActivityThread.access$2300(ActivityThread, ActivityThread$ActivityRecord, Intent) line: 125 
        ActivityThread$H.handleMessage(Message) line: 2033  
        ActivityThread$H(Handler).dispatchMessage(Message) line: 99 
        Looper.loop() line: 123 
        ActivityThread.main(String[]) line: 4627    
        Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]  
        Method.invoke(Object, Object...) line: 521  
        ZygoteInit$MethodAndArgsCaller.run() line: 868  
        ZygoteInit.main(String[]) line: 626 
        NativeStart.main(String[]) line: not available [native method]  
    Thread [<6> Binder Thread #2] (Running) 
    Thread [<5> Binder Thread #1] (Running) 
DalvikVM[localhost:8626]
线程[main](挂起(异常运行时异常))
ActivityThread.performLaunchActivity(ActivityThread$ActivityRecord,Intent)行:2585
ActivityThread.handleLaunchActivity(ActivityThread$ActivityRecord,Intent)行:2679
ActivityThread.access$2300(ActivityThread,ActivityThread$ActivityRecord,Intent)行:125
ActivityThread$H.handleMessage(消息)行:2033
ActivityThread$H(处理程序)。dispatchMessage(消息)行:99
Looper.loop()行:123
ActivityThread.main(字符串[])行:4627
invokenactive(Object,Object[],Class,Class[],Class,int,boolean)行:不可用[本机方法]
调用(对象,对象…)行:521
ZygoteInit$MethodAndArgsCaller.run()行:868
颧骨单位。主(字符串[])行:626
NativeStart.main(字符串[])行:不可用[本机方法]
螺纹[活页夹螺纹#2](运行)
螺纹[活页夹螺纹#1](运行)
在模拟器和设备上也是如此


我看到过这样的崩溃报告,它们是由无效XML的膨胀引起的,所以我几乎一个接一个地从我的项目中删除了所有XML和资源,同样的错误仍然存在!有没有什么技巧或工具可以用来尝试获得更有意义的错误消息?谢谢。

我找到了在这种情况下收集更多信息的答案。本页提供了一些非常有用的信息:


通过打开Eclipse视图调试部分的“变量”选项卡,我可以看到一个名为“e”的值,可能是“exception”的值,其值为“ClassNotFoundException”。通过点击它,我看到了一个更完整的描述,上面写着找不到的类。这是我的主要活动,我在前一个深夜重新命名了它,后来就忘了。Facepalm希望此信息能帮助他人

发布一些代码,发布你的清单。你说它在你的代码执行之前就崩溃了。你怎么知道的?那么它什么时候崩溃?当您考虑运行它时?如果应用程序正在退出,则可从DDMS或“adb logcat”查看的日志输出将显示完整的跟踪。另请参见。我在调试类似的崩溃时遇到了这个问题。“我的变量”选项卡没有显示任何内容,但是可以通过为未捕获的异常设置Eclipse断点来找到特定类型的异常。当调试中的程序由于未捕获的RuntimeException而中断时,断点窗口将显示捕获的特定类型的异常,如下所示:AcceptPendingException[Suspend VM]:未捕获。它不一定能解决知道原因的问题,但它是这一过程中更进一步的一步。