2013-06-25 3 views
1

У меня проблема с ClassNotFoundException. Когда я «Запуск приложений Android» от затмения он работает отлично, но когда я загрузить его из Google Play (тот же исходный код, но «экспортированной в качестве подписанного приложения») он падает со следующим StackTrace:ClassNotFoundException при загрузке из Google Play

java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.larphoid.aeboing/com.larphoid.aeboing.BoingBoing}: java.lang.ClassNotFoundException: com.larphoid.aeboing.BoingBoing in loader dalvik.system.PathClassLoader[/data/app/com.larphoid.aeboing-1.apk]  
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2703) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2797)  
    at android.app.ActivityThread.access$2300(ActivityThread.java:135) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2132)  
    at android.os.Handler.dispatchMessage(Handler.java:99) 
    at android.os.Looper.loop(Looper.java:143) 
    at android.app.ActivityThread.main(ActivityThread.java:4914)  
    at java.lang.reflect.Method.invokeNative(Native Method)  
    at java.lang.reflect.Method.invoke(Method.java:521)  
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  
    at dalvik.system.NativeStart.main(Native Method) 
Caused by: java.lang.ClassNotFoundException: com.larphoid.aeboing.BoingBoing in loader dalvik.system.PathClassLoader[/data/app/com.larphoid.aeboing-1.apk]  
    at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)  
    at java.lang.ClassLoader.loadClass(ClassLoader.java:573)  
    at java.lang.ClassLoader.loadClass(ClassLoader.java:532)  
    at android.app.Instrumentation.newActivity(Instrumentation.java:1033) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2695) 
... 11 more 

Я у меня никогда не было этой проблемы раньше, и я еще не испытал в «чтении» Stacktraces, так что я очень озадачен этим. Если у кого-то есть какие-то указатели или решение, я был бы признателен.

Спасибо.

+0

отметьте как ответ, крючок справа внизу кнопки нижнего уровня ответа, который вы хотите принять. – sschrass

ответ

4

Собирается скопировать это из другого вопроса, как я уже имел точно такие же проблему, и это, как я установил его:

Если вы работаете вст Rev 22, вы могли бы не экспортируйте свои библиотеки. Я не знаю, почему Google сделал это точно, но в новейшей революции вы должны проверить , чтобы убедиться, что вы сами экспортируете свои библиотеки.

Щелкните правой кнопкой мыши ваш проект, нажмите «Свойства» и выберите «Заказ» & Экспорт в разделе «Путь сборки Java». Это должно выглядеть следующим образом, если вы хотите экспортировать все:

enter image description here После восстановления приложения и экспортировать его снова. Теперь он должен работать. Чтобы проверить, просто установите .apk на свой телефон вручную, прежде чем класть его в магазин, чтобы убедиться, что он работает.

+1

whow спасибо миллион, я бы никогда не нашел это! если бы я мог проголосовать за миллион, я бы это сделал :) – Larphoid

+0

Нет проблем :) Примите, пожалуйста, ответ, если это решит проблему, чтобы другим было легче. –

1

ClassNotFoundException указывает, что что-то отсутствует на пути к классам. Возможно, вам недостает библиотеки в пути к классам.

Как следует из названия ClassNotFoundException в Java является подклассом java.lang.Exception и приходит, когда виртуальная машина Java пытается загрузить определенный класс и не нашли требуемый класс в пути к классам.

+0

downvote cuz не совсем полный ответ для этого. См. Ответ Sander van't Veer для правильного ответа! – Larphoid

+0

принять его ответ вместо downvoting ... Sander добавляет библиотеки в classpath, но с картинками. – sschrass

+0

Извините, не понял, что вы говорили об одном и том же. Я не очень хорошо знаком с терминологией. – Larphoid

0

Возможно, вы changepackage name при подписании вашего apk. Проверьте ваш package и class name