Android 电视嵌入 youtube 1080p

Android TV embedded youtube 1080p

我想在我的 Android 电视应用程序上显示一些 YouTube 视频,我试图移植一些我已经在 phone 上工作的东西,但我在那里使用 YouTube Android API 播放器,这似乎不适用于 Android 电视。

我发现了这个 https://code.google.com/p/gdata-issues/issues/detail?id=6998 所以看起来我并不孤单。

我添加了一个 WebView,我可以显示视频,但我无法获得全高清分辨率,嵌入式视频可以吗?

您只需要让视频 URL 告诉您以您想要的分辨率播放:

String url = "https://www.youtube.com/v/VIDEOID?version=3&vq=hd1080";

WebView myWebView = (WebView) this.findViewById(R.id.webView1);

view.loadUrl(url);

我尝试加载到网络视图中,但出现错误:

I/chromium:[INFO:CONSOLE(12)] "The key "target-densitydpi" is not supported.", source: https://m.youtube.com/watch?vq=hd1080&v=VidV0n-3a_U (12)

如果我使用它,它会起作用:

startActivity(新意图(Intent.ACTION_VIEW, Uri.parse(url)));

YouTube Player Full API 在 Android 电视上不可用,但开发者目前可以按如下方式使用 YouTube intent。

    String videoId = "dQw4w9WgXcQ";
    Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("vnd.youtube:" + videoId));
    intent.putExtra("force_fullscreen", true);
    intent.putExtra("finish_on_ended", true);
    startActivity(intent);

这将使用 YouTube 应用程序播放视频。 force_fullscreen=true 删除相关视频的导航,而 finish_on_ended=true returns 视频完成后调用应用程序。

您也可以使用

    Intent intent = YouTubeIntents.createPlayVideoIntentWithOptions(this, videoId, true, false);

如果您下载 YouTubeAndroid播放器API:

https://developers.google.com/youtube/android/player/downloads/

并将 jar 文件包含在您的项目中