我想在我的Android TV应用程序上显示一些YouTube视频,我试图移植我已经在手机上工作的东西,但我使用的是YouTube Android API播放器,它似乎无法正常工作Android TV。
我发现了https://code.google.com/p/gdata-issues/issues/detail?id=6998,所以看起来我并不孤单。
我添加了一个WebView,我可以显示视频,但我无法获得全高清分辨率,嵌入式视频是否可以实现?
答案 0 :(得分:4)
YouTube播放器完整API不适用于Android TV,但开发人员目前可以使用YouTube意图,如下所示。
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会在视频完成时返回到调用应用。
您也可以使用
Intent intent = YouTubeIntents.createPlayVideoIntentWithOptions(this, videoId, true, false);
如果您下载YouTubeAndroidPlayerAPI:
https://developers.google.com/youtube/android/player/downloads/
并在项目中包含jar文件
答案 1 :(得分:0)
您只需要让视频网址以您想要的分辨率播放:
String url = "https://www.youtube.com/v/VIDEOID?version=3&vq=hd1080";
WebView myWebView = (WebView) this.findViewById(R.id.webView1);
view.loadUrl(url);
答案 2 :(得分:0)
我尝试加载到webview中并收到错误:
I / chromium:[INFO:CONSOLE(12)]“不支持”target-densitydpi“键。”,来源:https://m.youtube.com/watch?vq=hd1080&v=VidV0n-3a_U(12)
如果我使用它,它可以工作:
startActivity(new Intent(Intent.ACTION_VIEW,Uri.parse(url)));