Android GoogleCast Error - java.lang.NoClassDefFoundError: android.support.v7.media.MediaRouterGlobalMediaRouter
Android GoogleCast Error - java.lang.NoClassDefFoundError: android.support.v7.media.MediaRouterGlobalMediaRouter
我正在编译这个 Github 项目 CastVideos-android 的 ChromeCast。在 Eclipse environment.I 中,项目上安装了最新的依赖项。
当我 运行 启动项目时,它会抛出这个 运行 时间错误。
05-05 11:25:08.353: E/AndroidRuntime(17660): FATAL EXCEPTION: main
05-05 11:25:08.353: E/AndroidRuntime(17660): java.lang.NoClassDefFoundError: android.support.v7.media.MediaRouter$GlobalMediaRouter
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.support.v7.media.MediaRouter$GlobalMediaRouter.<init>(MediaRouter.java:1628)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.support.v7.media.MediaRouter.getInstance(MediaRouter.java:246)
05-05 11:25:08.353: E/AndroidRuntime(17660): at com.google.android.libraries.cast.companionlibrary.cast.BaseCastManager.<init>(BaseCastManager.java:189)
05-05 11:25:08.353: E/AndroidRuntime(17660): at com.google.android.libraries.cast.companionlibrary.cast.VideoCastManager.<init>(VideoCastManager.java:196)
05-05 11:25:08.353: E/AndroidRuntime(17660): at com.google.android.libraries.cast.companionlibrary.cast.VideoCastManager.initialize(VideoCastManager.java:223)
05-05 11:25:08.353: E/AndroidRuntime(17660): at com.google.sample.cast.refplayer.CastApplication.onCreate(CastApplication.java:43)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1014)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4280)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.app.ActivityThread.access00(ActivityThread.java:143)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1301)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.os.Handler.dispatchMessage(Handler.java:99)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.os.Looper.loop(Looper.java:137)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.app.ActivityThread.main(ActivityThread.java:4950)
05-05 11:25:08.353: E/AndroidRuntime(17660): at java.lang.reflect.Method.invokeNative(Native Method)
05-05 11:25:08.353: E/AndroidRuntime(17660): at java.lang.reflect.Method.invoke(Method.java:511)
05-05 11:25:08.353: E/AndroidRuntime(17660): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:997)
05-05 11:25:08.303: E/dalvikvm(17660): Could not find class 'android.support.v7.media.MediaRouter$GlobalMediaRouter', referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.<init>
05-05 11:25:08.303: W/dalvikvm(17660): VFY: unable to resolve new-instance 1180 (Landroid/support/v7/media/MediaRouter$GlobalMediaRouter;) in Landroid/support/v7/media/MediaRouter$GlobalMediaRouter;
05-05 11:25:08.303: D/dalvikvm(17660): VFY: replacing opcode 0x22 at 0x0035
05-05 11:25:08.303: W/dalvikvm(17660): VFY: unable to find class referenced in signature (Landroid/support/v4/media/session/MediaSessionCompat;)
05-05 11:25:08.313: I/dalvikvm(17660): Could not find method android.support.v4.media.session.MediaSessionCompat.getSessionToken, referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.getMediaSessionToken
05-05 11:25:08.313: W/dalvikvm(17660): VFY: unable to resolve virtual method 2967: Landroid/support/v4/media/session/MediaSessionCompat;.getSessionToken ()Landroid/support/v4/media/session/MediaSessionCompat$Token;
05-05 11:25:08.313: D/dalvikvm(17660): VFY: replacing opcode 0x6e at 0x0011
05-05 11:25:08.323: W/dalvikvm(17660): VFY: unable to find class referenced in signature (Landroid/support/v4/media/session/MediaSessionCompat;)
05-05 11:25:08.323: I/dalvikvm(17660): Could not find method android.support.v4.media.session.MediaSessionCompat.getRemoteControlClient, referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.setMediaSessionCompat
05-05 11:25:08.323: W/dalvikvm(17660): VFY: unable to resolve virtual method 2966: Landroid/support/v4/media/session/MediaSessionCompat;.getRemoteControlClient ()Ljava/lang/Object;
05-05 11:25:08.323: D/dalvikvm(17660): VFY: replacing opcode 0x6e at 0x000a
05-05 11:25:08.323: I/dalvikvm(17660): Could not find method android.support.v4.media.session.MediaSessionCompat.getMediaSession, referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.setMediaSessionCompat
05-05 11:25:08.323: W/dalvikvm(17660): VFY: unable to resolve virtual method 2965: Landroid/support/v4/media/session/MediaSessionCompat;.getMediaSession ()Ljava/lang/Object;
05-05 11:25:08.323: D/dalvikvm(17660): VFY: replacing opcode 0x6e at 0x001e
05-05 11:25:08.333: I/dalvikvm(17660): Could not find method android.support.v4.media.session.MediaSessionCompat.getRemoteControlClient, referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.setMediaSessionCompat
05-05 11:25:08.333: W/dalvikvm(17660): VFY: unable to resolve virtual method 2966: Landroid/support/v4/media/session/MediaSessionCompat;.getRemoteControlClient ()Ljava/lang/Object;
05-05 11:25:08.333: D/dalvikvm(17660): VFY: replacing opcode 0x6e at 0x0032
05-05 11:25:08.333: I/dalvikvm(17660): Could not find method android.support.v4.media.session.MediaSessionCompat.addOnActiveChangeListener, referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.setMediaSessionCompat
05-05 11:25:08.333: W/dalvikvm(17660): VFY: unable to resolve virtual method 2964: Landroid/support/v4/media/session/MediaSessionCompat;.addOnActiveChangeListener (Landroid/support/v4/media/session/MediaSessionCompat$OnActiveChangeListener;)V
05-05 11:25:08.333: D/dalvikvm(17660): VFY: replacing opcode 0x6e at 0x0044
05-05 11:25:08.333: I/dalvikvm(17660): Failed resolving Landroid/support/v7/media/MediaRouter$GlobalMediaRouter; interface 510 'Landroid/support/v4/media/session/MediaSessionCompat$OnActiveChangeListener;'
05-05 11:25:08.333: W/dalvikvm(17660): Link of class 'Landroid/support/v7/media/MediaRouter$GlobalMediaRouter;' failed
转到您的项目并检查 v7-appcompat jar
文件。右击它 Build Path-> Add to Buildpath
勾选buildpath
。特别是 Order and Export
部分,如果您
v7-appcompat library
勾选
- 检查您的项目是否包含多个
support-v7 library
。一个是
在 你的项目中,另一个在你添加的库中
在你的项目中。只需 删除 您添加的一个库
你的项目。然后 clean 和 运行 您的应用程序 .
我正在编译这个 Github 项目 CastVideos-android 的 ChromeCast。在 Eclipse environment.I 中,项目上安装了最新的依赖项。
当我 运行 启动项目时,它会抛出这个 运行 时间错误。
05-05 11:25:08.353: E/AndroidRuntime(17660): FATAL EXCEPTION: main
05-05 11:25:08.353: E/AndroidRuntime(17660): java.lang.NoClassDefFoundError: android.support.v7.media.MediaRouter$GlobalMediaRouter
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.support.v7.media.MediaRouter$GlobalMediaRouter.<init>(MediaRouter.java:1628)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.support.v7.media.MediaRouter.getInstance(MediaRouter.java:246)
05-05 11:25:08.353: E/AndroidRuntime(17660): at com.google.android.libraries.cast.companionlibrary.cast.BaseCastManager.<init>(BaseCastManager.java:189)
05-05 11:25:08.353: E/AndroidRuntime(17660): at com.google.android.libraries.cast.companionlibrary.cast.VideoCastManager.<init>(VideoCastManager.java:196)
05-05 11:25:08.353: E/AndroidRuntime(17660): at com.google.android.libraries.cast.companionlibrary.cast.VideoCastManager.initialize(VideoCastManager.java:223)
05-05 11:25:08.353: E/AndroidRuntime(17660): at com.google.sample.cast.refplayer.CastApplication.onCreate(CastApplication.java:43)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1014)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4280)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.app.ActivityThread.access00(ActivityThread.java:143)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1301)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.os.Handler.dispatchMessage(Handler.java:99)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.os.Looper.loop(Looper.java:137)
05-05 11:25:08.353: E/AndroidRuntime(17660): at android.app.ActivityThread.main(ActivityThread.java:4950)
05-05 11:25:08.353: E/AndroidRuntime(17660): at java.lang.reflect.Method.invokeNative(Native Method)
05-05 11:25:08.353: E/AndroidRuntime(17660): at java.lang.reflect.Method.invoke(Method.java:511)
05-05 11:25:08.353: E/AndroidRuntime(17660): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:997)
05-05 11:25:08.303: E/dalvikvm(17660): Could not find class 'android.support.v7.media.MediaRouter$GlobalMediaRouter', referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.<init>
05-05 11:25:08.303: W/dalvikvm(17660): VFY: unable to resolve new-instance 1180 (Landroid/support/v7/media/MediaRouter$GlobalMediaRouter;) in Landroid/support/v7/media/MediaRouter$GlobalMediaRouter;
05-05 11:25:08.303: D/dalvikvm(17660): VFY: replacing opcode 0x22 at 0x0035
05-05 11:25:08.303: W/dalvikvm(17660): VFY: unable to find class referenced in signature (Landroid/support/v4/media/session/MediaSessionCompat;)
05-05 11:25:08.313: I/dalvikvm(17660): Could not find method android.support.v4.media.session.MediaSessionCompat.getSessionToken, referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.getMediaSessionToken
05-05 11:25:08.313: W/dalvikvm(17660): VFY: unable to resolve virtual method 2967: Landroid/support/v4/media/session/MediaSessionCompat;.getSessionToken ()Landroid/support/v4/media/session/MediaSessionCompat$Token;
05-05 11:25:08.313: D/dalvikvm(17660): VFY: replacing opcode 0x6e at 0x0011
05-05 11:25:08.323: W/dalvikvm(17660): VFY: unable to find class referenced in signature (Landroid/support/v4/media/session/MediaSessionCompat;)
05-05 11:25:08.323: I/dalvikvm(17660): Could not find method android.support.v4.media.session.MediaSessionCompat.getRemoteControlClient, referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.setMediaSessionCompat
05-05 11:25:08.323: W/dalvikvm(17660): VFY: unable to resolve virtual method 2966: Landroid/support/v4/media/session/MediaSessionCompat;.getRemoteControlClient ()Ljava/lang/Object;
05-05 11:25:08.323: D/dalvikvm(17660): VFY: replacing opcode 0x6e at 0x000a
05-05 11:25:08.323: I/dalvikvm(17660): Could not find method android.support.v4.media.session.MediaSessionCompat.getMediaSession, referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.setMediaSessionCompat
05-05 11:25:08.323: W/dalvikvm(17660): VFY: unable to resolve virtual method 2965: Landroid/support/v4/media/session/MediaSessionCompat;.getMediaSession ()Ljava/lang/Object;
05-05 11:25:08.323: D/dalvikvm(17660): VFY: replacing opcode 0x6e at 0x001e
05-05 11:25:08.333: I/dalvikvm(17660): Could not find method android.support.v4.media.session.MediaSessionCompat.getRemoteControlClient, referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.setMediaSessionCompat
05-05 11:25:08.333: W/dalvikvm(17660): VFY: unable to resolve virtual method 2966: Landroid/support/v4/media/session/MediaSessionCompat;.getRemoteControlClient ()Ljava/lang/Object;
05-05 11:25:08.333: D/dalvikvm(17660): VFY: replacing opcode 0x6e at 0x0032
05-05 11:25:08.333: I/dalvikvm(17660): Could not find method android.support.v4.media.session.MediaSessionCompat.addOnActiveChangeListener, referenced from method android.support.v7.media.MediaRouter$GlobalMediaRouter.setMediaSessionCompat
05-05 11:25:08.333: W/dalvikvm(17660): VFY: unable to resolve virtual method 2964: Landroid/support/v4/media/session/MediaSessionCompat;.addOnActiveChangeListener (Landroid/support/v4/media/session/MediaSessionCompat$OnActiveChangeListener;)V
05-05 11:25:08.333: D/dalvikvm(17660): VFY: replacing opcode 0x6e at 0x0044
05-05 11:25:08.333: I/dalvikvm(17660): Failed resolving Landroid/support/v7/media/MediaRouter$GlobalMediaRouter; interface 510 'Landroid/support/v4/media/session/MediaSessionCompat$OnActiveChangeListener;'
05-05 11:25:08.333: W/dalvikvm(17660): Link of class 'Landroid/support/v7/media/MediaRouter$GlobalMediaRouter;' failed
转到您的项目并检查
v7-appcompat jar
文件。右击它Build Path-> Add to Buildpath
勾选
buildpath
。特别是Order and Export
部分,如果您v7-appcompat library
勾选- 检查您的项目是否包含多个
support-v7 library
。一个是 在 你的项目中,另一个在你添加的库中 在你的项目中。只需 删除 您添加的一个库 你的项目。然后 clean 和 运行 您的应用程序 .