Android ClassNotFoundException, когда я запускаю образец googlecast

10-24 22:37:47.926: E/Trace(31760): error opening trace file: No such file or directory (2)
10-24 21:50:17.726: E/AndroidRuntime(25669): FATAL EXCEPTION: main
10-24 21:50:17.726: E/AndroidRuntime(25669): java.lang.RuntimeException: Unable to       instantiate activity     ComponentInfo{com.example.castsample/com.example.castsample.CastSampleActivity}: java.lang.ClassNotFoundException: com.example.castsample.CastSampleActivity
10-24 21:50:17.726: E/AndroidRuntime(25669):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1983)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at android.app.ActivityThread.access$600(ActivityThread.java:130)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at android.os.Handler.dispatchMessage(Handler.java:99)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at android.os.Looper.loop(Looper.java:137)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at android.app.ActivityThread.main(ActivityThread.java:4745)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at java.lang.reflect.Method.invokeNative(Native Method)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at java.lang.reflect.Method.invoke(Method.java:511)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at dalvik.system.NativeStart.main(Native Method)
10-24 21:50:17.726: E/AndroidRuntime(25669): Caused by: java.lang.ClassNotFoundException: com.example.castsample.CastSampleActivity
10-24 21:50:17.726: E/AndroidRuntime(25669):    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at android.app.Instrumentation.newActivity(Instrumentation.java:1053)
10-24 21:50:17.726: E/AndroidRuntime(25669):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974)
10-24 21:50:17.726: E/AndroidRuntime(25669):    ... 11 more    </code>

Это ошибка, с которой я столкнулся при запуске примера google-cast. И я ничего не изменяю в манифесте.
Буду признателен за любую помощь.


person henry    schedule 25.10.2013    source источник
comment
Вы используете ProGuard или любой обфускатор?   -  person Ranhiru Jude Cooray    schedule 25.10.2013
comment
Какую IDE вы используете?   -  person Amulya Khare    schedule 25.10.2013
comment
Я не использую ProGuard и любой обфускатор.   -  person henry    schedule 25.10.2013
comment
Я использую eclipse для разработки.   -  person henry    schedule 25.10.2013
comment
Проверьте это: stackoverflow.com/questions/16744963/ и stackoverflow.com/questions/16596969/   -  person Siddharth_Vyas    schedule 25.10.2013
comment
Я проверил все зависимости Android и библиотеки поддержки, ошибка все еще есть.   -  person henry    schedule 25.10.2013


Ответы (3)


Ставка v7-appcompat.jar, v7-mediarouter.jar проблему не решает. Это приведет к ошибке во время выполнения.
Вы должны импортировать 2 вышеуказанных проекта как проект библиотеки. Appcompat является зависимым проектом проекта Mediarouter. Затем добавьте 2 вышеуказанных проекта в качестве проекта зависимостей вашего проекта.

person Huy Duong Tu    schedule 29.10.2013
comment
Вы импортируете проект appcompat и mediarouter в каталог android-sdk/extra/android как проект библиотеки. Затем выберите путь сборки Java в свойствах вашего проекта. Добавьте 2 вышеупомянутых проекта lib в качестве вашего проекта зависимостей. - person Huy Duong Tu; 29.10.2013

поместите свои библиотеки / jar в папку libs. если он по-прежнему называется lib, переименуйте его в libs.

person hepizoj    schedule 25.10.2013
comment
Я добавил в библиотеки sup-v4.sup-v7-appcompat,sup-v7-mediarouter. Возможно, это не проблема. Все же разрешите поблагодарить вас. - person henry; 25.10.2013

Попробуйте выполнить следующие шаги в проекте Android:

  • Щелкните правой кнопкой мыши проект в «Проводнике проектов», затем выберите «Свойства».
  • Выберите «Путь сборки Java» в списке слева.
  • Нажмите на вкладку «Заказ и экспорт».
  • Установите два флажка для «Частных библиотек Android» и «Зависимости Android» соответственно, затем нажмите кнопку «ОК».
  • Очистите проект(ы) и запустите.

Если ничего не работает, вы можете попробовать некоторые решения из эта страница. Вот ответ с наибольшим количеством голосов: https://stackoverflow.com/a/11776806/827110

person Amulya Khare    schedule 25.10.2013
comment
Я обновил свой ответ. Похоже, эта проблема довольно распространена, и большинство людей не знают, как ее решить. - person Amulya Khare; 25.10.2013
comment
Я думаю, что это не основная причина проблемы ClassNotFoundException. Возможно, версия устройства отличается от вызванной версии проекта. - person henry; 25.10.2013