如何使用YoutubePlayerSupportFragment在Android中使用具有现代UI的Youtube Player

时间:2015-10-04 14:58:53

标签: android youtube youtube-api

我正在尝试在我的Android应用中使用Youtube播放器。它显示了播放器旧的过时UI,但在示例中它显示了一个现代UI。两个应用程序之间的唯一区别是我使用YoutubePlayerSupportFragment而不是YoutubePlayerFragment。这是因为我在前棒棒糖设备中使用AppCompatActivity for Material Theme。

我在日志中收到以下声明:

W/YouTubeAndroidPlayerAPI﹕ Cannot load modern controls UI. Upgrade to the latest version of the Android YouTube API.

如何克服这个问题?我需要使用Appcompat和YoutubePlayerSupportFragment

的现代UI

2 个答案:

答案 0 :(得分:9)

我找到了对我有用的东西。

在您的片段当前所在的活动中的super.OnCreate()之前设置此项:

getLayoutInflater()setFactory(本);

答案 1 :(得分:4)

我的猜测是 YouTube API尚未更新

考虑一下:

  • YouTube Android播放器API(找到here)只是一堆远程View链接到官方YouTube应用程序,需要安装在设备上才能运行
  • YouTube应用现在是minSdk 15,意味着本地支持Fragment
  • 正如您所提到的,一切都适用于YouTubePlayerFragment,但不适用于YouTubePlayerSupportFragment

我相信YouTube' SDK'可以直接从YouTube应用程序导入播放器视图,充分利用现代UI控件。但是,支持Fragment需要在SDK端执行更多操作,这些操作尚未以更新的形式进行。

<强> TL; DR

您最好的选择是等待YouTube API更新为更新版本。

修改

看起来YouTube SDK刚刚更新为 1.2.2 !抬头over here下载它。