如何解决ActivityThread.performLaunchActivity中的java.lang.ClassNotFoundException?

时间:2012-06-19 21:54:17

标签: android exception classnotfoundexception

对于我的Android应用程序,我在Google Play的开发者控制台中收到以下错误:

java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{PACKAGE_NAME/PACKAGE_NAME.MainActivity}: java.lang.ClassNotFoundException: PACKAGE_NAME.MainActivity in loader dalvik.system.PathClassLoader[/mnt/asec/PACKAGE_NAME-1/pkg.apk]
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1573)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3693)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:907)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: PACKAGE_NAME.MainActivity in loader dalvik.system.PathClassLoader[/mnt/asec/PACKAGE_NAME-1/pkg.apk]
at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1565)

虽然这个错误很少出现(并且可能会被忽略),但我发现拥有一个没有错误的开发人员控制台更加清晰:)而且,我只想知道导致此错误的原因。

是的,似乎有一个无法找到的课程。但为什么?我该如何防止这种情况?

1 个答案:

答案 0 :(得分:2)

更新(15年4月26日):

经过进一步研究后,我相信你肯定是一个用户错误。 [/mnt/asec/PACKAGE_NAME-1/pkg.apk]最有可能意味着他们正在尝试将您的应用移至SD卡。请在这里阅读:

Android intermittent class not found run time exception

"Unable to instantiate activity" error

Android: Unable to instantiate activity / ClassNotFoundException

原件:

这是Logcat看到的Java RuntimeException。我之前已经多次看到这种情况发生了,因为我没有正确地添加活动。

java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{PACKAGE_NAME/PACKAGE_NAME.MainActivity}: java.lang.ClassNotFoundException: PACKAGE_NAME.MainActivity in loader dalvik.system.PathClassLoader[/mnt/asec/PACKAGE_NAME-1/pkg.apk]