我的 Android 应用程序刚刚崩溃(“...已意外停止”),我对其进行了调试,以便知道它在哪里崩溃:
Log.d( "myapp", "note 1" );
try
{
Bla1 bla = new Bla1();
}
catch( Exception e )
{
Log.d( "myapp", e.getMessage() );
}
Log.d( "myapp", "note 2" );
“note 1”是应用程序崩溃前打印到日志的最后一件事。我在 Bla1 的构造函数中也有一个 Log.d 语句,显然从未执行过。此代码片段发生在 MainActivity 类(它扩展了 Activity)的方法中。Bla1 是 MainActivity 的内部类,扩展了抽象类 Bla,Bla 也是 MainActivity 的内部类。
在 logcat 中出现了这两行:
E/dalvikvm(20567):找不到类 'com.tb.myapp.MainActivity$Bla1',引用自方法 com.tb.myapp.MainActivity.parseFile
E/dalvikvm(20567):找不到类 'com.tb .myapp.MainActivity$Bla',引用自方法 com.tb.myapp.MainActivity$MyTextWatcher.afterTextChanged
因此无法创建这些实例,从而导致:
E/AndroidRuntime(20567):致命异常:主要
E/AndroidRuntime(20567):java.lang.NoClassDefFoundError:com.tb.myapp.MainActivity$Bla1
2 个内部类(Bla 和 Bla1)的代码在这里:http ://pastebin.com/9hAGdubb
有谁知道如何解决这个问题?我完全不知道。
提前致谢。