RuntimeException:无法实例化应用程序

use*_*944 97 android android-emulator android-intent

当我运行我的应用程序时,每次我在logcat中获得以下异常时:

 04-14 09:29:53.965: W/dalvikvm(1020): threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
    04-14 09:29:53.985: E/AndroidRuntime(1020): FATAL EXCEPTION: main
    04-14 09:29:53.985: E/AndroidRuntime(1020): java.lang.RuntimeException: Unable to instantiate application   android.app.Application: java.lang.NullPointerException
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.LoadedApk.makeApplication(LoadedApk.java:482)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3938)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.ActivityThread.access$1300(ActivityThread.java:123)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1185)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.os.Handler.dispatchMessage(Handler.java:99)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.os.Looper.loop(Looper.java:137)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.ActivityThread.main(ActivityThread.java:4424)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at java.lang.reflect.Method.invokeNative(Native Method)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at java.lang.reflect.Method.invoke(Method.java:511)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at dalvik.system.NativeStart.main(Native Method)
    04-14 09:29:53.985: E/AndroidRuntime(1020): Caused by: java.lang.NullPointerException
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.LoadedApk.initializeJavaContextClassLoader(LoadedApk.java:362)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.LoadedApk.getClassLoader(LoadedApk.java:305)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.LoadedApk.makeApplication(LoadedApk.java:474)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     ... 11 more
Run Code Online (Sandbox Code Playgroud)

注意:当我从模拟器中卸载应用程序并运行它时,我没有得到此异常但是当我在模拟器中重新运行已安装的应用程序时,我得到了这个.请帮忙.

yor*_*rkw 194

当dalvik重新安装.apk文件并尝试重用或回收来自同一软件包的先前打开的活动/视图时,这是由底层框架引发的详细错误消息(如果您尚未关闭之前安装的应用程序).它与您的应用程序无关,此外,您的应用程序不太可能因最终用户设备上的详细错误消息而冻结或崩溃.

看来这个dalvik详细错误日志只发生在Android 4.0系统上,我在Android 3.2和2.3.3运行环境中自己测试过,在那里你无法复制以显示这两个消息.类似的问题已经在之前讨论了这里,有人填补了一个错误报告的Android的问题跟踪.

我不认为你现在应该过多关注这个详细的错误日志,如果你在Logcat中看到这个红色错误之前和之后的更多日志,你可以看到完整的故事并找到之前打开的活动/视图(哪个被标记为死亡状态)被杀死并且新重新安装的人最终被解雇.

  • 我在生产应用程序的开发人员控制台中得到了这个.它似乎主要发生在4.2,但我也见过其他版本(4.1,4.4). (3认同)
  • @Dustin,你解决了这个问题吗?因为此异常报告最多34 /周!在用户消息中有很多抱怨! (3认同)
  • 嗨,没有我的应用程序既没有因为该异常而崩溃也没有冻结,即使在抛出异常之后它也能正常工作.我刚看到logcat中的异常并且没有意识到它,因此想到了同样的问题.感谢您提供的信息,非常实用. (2认同)

Jul*_*mes 16

我意识到这是一个非常古老的问题,但无论如何这可能是有用的.我发现当我在自己的开发中发现这个错误时,这是​​由于我以前运行的应用程序实例没有整齐地关闭,例如在退出之前关闭后台线程.