2014-01-16 5 views
0

Я получил отчет о сбое ранее из ACRA и это трассировки стека:java.lang.RuntimeException: Невозможно создать экземпляр активности ComponentInfo {}: java.lang.ClassNotFoundException:

java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.PACKAGENAME/com.PACKAGENAME.Timetable}: java.lang.ClassNotFoundException: com.PACKAGENAME.Timetable 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1992) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2093) 
    at android.app.ActivityThread.access$600(ActivityThread.java:139) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1204) 
    at android.os.Handler.dispatchMessage(Handler.java:103) 
    at android.os.Looper.loop(Looper.java:137) 
    at android.app.ActivityThread.main(ActivityThread.java:4801) 
    at java.lang.reflect.Method.invokeNative(Native Method) 
    at java.lang.reflect.Method._logged_invoke(Method.java:524) 
    at java.lang.reflect.Method.invoke(Method.java:513) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 
    at dalvik.system.NativeStart.main(Native Method) 
Caused by: java.lang.ClassNotFoundException: com.PACKAGE.Timetable 
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:72) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:520) 
    at java.lang.ClassLoader._logged_loadClass(ClassLoader.java:480) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:472) 
    at android.app.Instrumentation.newActivity(Instrumentation.java:1056) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1983) 
    ... 12 more 
java.lang.ClassNotFoundException: com.PACKAGE.Timetable 
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:72) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:520) 
    at java.lang.ClassLoader._logged_loadClass(ClassLoader.java:480) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:472) 
    at android.app.Instrumentation.newActivity(Instrumentation.java:1056) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1983) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2093) 
    at android.app.ActivityThread.access$600(ActivityThread.java:139) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1204) 
    at android.os.Handler.dispatchMessage(Handler.java:103) 
    at android.os.Looper.loop(Looper.java:137) 
    at android.app.ActivityThread.main(ActivityThread.java:4801) 
    at java.lang.reflect.Method.invokeNative(Native Method) 
    at java.lang.reflect.Method._logged_invoke(Method.java:524) 
    at java.lang.reflect.Method.invoke(Method.java:513) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 
    at dalvik.system.NativeStart.main(Native Method) 

Я думаю, что происходит из-за У меня есть следующая активность в манифесте, но я никогда не использовал ее.

<activity 
     android:name="com.PACKAGENAME.Timetable" 
     android:label="@string/timetable" > 
    </activity> 

В моем проекте под названием «Расписание» нет класса, и эта деятельность никогда не называется. Я знаю, что я должен удалить его тогда (и я это сделаю), но мне интересно, почему это не приводит к сбою приложения больше? Это было в приложении в течение нескольких месяцев и только вызвало его сбой в первый раз сегодня. Приложение будет использовать тихий бит каждый день, и я не смог воспроизвести его (из более 100 пользователей, которых он только сегодня сделал для одного пользователя). Почему это происходит сейчас, и я прав, полагая, что это вызвано этой деятельностью?

+0

«И эта деятельность никогда не называется» - она, похоже, выглядит так. Посмотрите, есть ли ссылки на этот класс. – CommonsWare

+0

У меня есть 3 раза сейчас, и нет ничего, что бы это называло. Я на 100% уверен. – Howli

+0

@CommonsWare Я могу отправить вам копию кода, если вы мне не верите. – Howli

ответ

3

Java.lang.ClassNotFoundException означает, что в среде выполнения отсутствует класс. Для моего случая сначала проверьте AndroidManifest.xml, чтобы убедиться, что активность объявлена, и затем я хотел бы проверить, добавили ли я все необходимые библиотеки в путь сборки.

Щелкните правой кнопкой мыши по проекту -> properties -> java build path -> библиотеки, добавьте библиотеки или создайте их, содержащие классы, и включите экспорт заказов для библиотек.

Смежные вопросы

 Смежные вопросы