运行Android应用程序时,我收到这些错误,但一切都在设备上正常工作。这意味着什么?以及如何摆脱它们?
07-20 11:09:38.119: E/AndroidRuntime(930): FATAL EXCEPTION: main
07-20 11:09:38.119: E/AndroidRuntime(930): java.lang.RuntimeException: Unable to instantiate application android.app.Application: java.lang.NullPointerException
07-20 11:09:38.119: E/AndroidRuntime(930): at android.app.LoadedApk.makeApplication(LoadedApk.java:482)
07-20 11:09:38.119: E/AndroidRuntime(930): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3909)
07-20 11:09:38.119: E/AndroidRuntime(930): at android.app.ActivityThread.access$1300(ActivityThread.java:122)
07-20 11:09:38.119: E/AndroidRuntime(930): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1184)
07-20 11:09:38.119: E/AndroidRuntime(930): at android.os.Handler.dispatchMessage(Handler.java:99)
07-20 11:09:38.119: E/AndroidRuntime(930): at android.os.Looper.loop(Looper.java:137)
07-20 11:09:38.119: E/AndroidRuntime(930): at android.app.ActivityThread.main(ActivityThread.java:4340)
07-20 11:09:38.119: E/AndroidRuntime(930): at java.lang.reflect.Method.invokeNative(Native Method)
07-20 11:09:38.119: E/AndroidRuntime(930): at java.lang.reflect.Method.invoke(Method.java:511)
07-20 11:09:38.119: E/AndroidRuntime(930): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
07-20 11:09:38.119: E/AndroidRuntime(930): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
07-20 11:09:38.119: E/AndroidRuntime(930): at dalvik.system.NativeStart.main(Native Method)
07-20 11:09:38.119: E/AndroidRuntime(930): Caused by: java.lang.NullPointerException
07-20 11:09:38.119: E/AndroidRuntime(930): at android.app.LoadedApk.initializeJavaContextClassLoader(LoadedApk.java:362)
07-20 11:09:38.119: E/AndroidRuntime(930): at android.app.LoadedApk.getClassLoader(LoadedApk.java:305)
07-20 11:09:38.119: E/AndroidRuntime(930): at android.app.LoadedApk.makeApplication(LoadedApk.java:474)
07-20 11:09:38.119: E/AndroidRuntime(930): ... 11 more
答案 0 :(得分:1)
看起来您正在使用Thread.setDefaultUncaughtExceptionHandler()
。您已设置应用程序级错误处理程序,即将堆栈跟踪打印到日志中。
这就是为什么你的应用程序在抛出致命异常后仍然运行。
答案 1 :(得分:1)
我不确定你在这里问的是什么。您的应用无法正常运行,您的应用会抛出nullpointerexception
。这不好。
看看这一行。
Caused by: java.lang.NullPointerException
07-20 11:09:38.119: E/AndroidRuntime(930): at android.app.LoadedApk.initializeJavaContextClassLoader(LoadedApk.java:362)
现在我假设你自己的类/文件没有像这样命名,如果你检查initializeJavaContextClassLoader
,你会发现很多东西。看起来这更像是一个“设置”或模拟器的东西,然后是一个代码的东西。
还有其他一些问题(你甚至可以称之为重复问题?):
这一切都暗示这不是特定于代码的,而且可能与您的设置有关。
清洁等总是可以预见的,但这对所有人来说似乎并没有帮助。我能看到的最好的办法是尝试清理和构建你的项目。