Android:在Gingerbread上使用YouTubePlayerFragment的NoClassDefFoundError

时间:2013-12-12 17:54:31

标签: android youtube youtube-api android-2.3-gingerbread

我正在使用Youtube API在我的Android应用中播放Youtube视频。它适用于较新的手机,但当我尝试在运行Gingerbread的设备上运行时,我收到错误:

Unable to resolve superclass of Lcom/google/android/youtube/player/YouTubePlayerFragment; (21)
Link of class 'Lcom/google/android/youtube/player/YouTubePlayerFragment;' failed
VFY: unable to resolve static method 9606: Lcom/google/android/youtube/player/YouTubePlayerFragment;.newInstance ()Lcom/google/android/youtube/player/YouTubePlayerFragment;
thread exiting with uncaught exception (group=0x40015578)
FATAL EXCEPTION: main java.lang.NoClassDefFoundError: com.google.android.youtube.player.YouTubePlayerFragment

我已经阅读了许多关于NoClassDefFoundError的其他SO问题,但我似乎无法解决这个问题。这些是我做过的事情:

  • 清理项目
  • YouTubeAdnroidPlayerApi.jar 添加到我的libs文件夹
  • 在Java Build Path中的“Order and Export”下,我确保检查了YouTubePlayerApi.jar。
  • YouTubeAndroidPlayerApi.jar列在我的Java Build Path
  • 中的库下
  • 确保我在设备上安装了与YouTube API兼容的YouTube应用版本(该手机具有YouTube版本5.3.24)

有谁知道如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

我不相信蜂窝前支持片段(没有适当的兼容库)。

请尝试使用com.google.android.youtube.player.YouTubePlayerSupportFragment

有关更多信息,请参阅此处: https://developers.google.com/youtube/android/player/reference/com/google/android/youtube/player/YouTubePlayerSupportFragment

答案 1 :(得分:0)

please use the older API 1.0 I also have the same issue with 1.2.