如何在YouTube视频播放器中播放YouTube视频中的视频android
问题描述:
我正在开发Android应用,我的应用中的用户可以从YouTube,VIMEO或任何其他来源上传视频。 现在我有一个需要在recyclerview中加载的视频列表。在recyclerview的名单我已经使用如何在YouTube视频播放器中播放YouTube视频中的视频android
<VideoView
android:id="@+id/video_view"
android:minHeight="1dp"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"/>
当我从YouTube或VIMEO加载视频,它不videoview播放这些视频。
如何在videoview中播放这些视频,以及如何支持所有类型的视频以在我的android应用中播放。
非常感谢您的高级帮助。
答
你可以找到完整的实施here。但总体思路是,您需要使用WebView
,并且您将为其提供Vimeo视频的嵌入数据。您还可以使用vimeo-networking-java SDK获取视频的嵌入html。
这里是最初的WebView设置:
mWebView = new WebView((Context) this);
mWebView.setLayoutParams(new LayoutParams(windowWidth, windowHeight));
mWebView.getSettings().setJavaScriptEnabled(true);
// Watch the sdk level here, < 12 requires 'false
// Wanted to force HTML5/264/mp4, you may want flash
// where still available
mWebView.getSettings().setPluginState(PluginState.OFF);
mWebView.getSettings().setLoadWithOverviewMode(true);
mWebView.getSettings().setUseWideViewPort(true);
mWebView.getSettings().setUserAgentString("Android Mozilla/5.0 AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30");
wcc = new MyWebChromeClient();
mWebView.setWebChromeClient(wcc);
wvc = new MyWebViewClient();
mWebView.setWebViewClient(wvc);
因为我有视频列表,并希望加载一个recyclerview该列表我不能使用web视图。你可以请建议别的东西,而不是我可以用来在android中播放任何类型的视频的webview。 非常感谢您的帮助。 –
@PrithnirajNicyone拥有一个VideoViews列表(所有这些都可能同时播放),这对性能来说是相当糟糕的。 Exoplayer是支持YouTube和Vimeo vid的最佳选择 - 但这也是最好的单一实例。 我会建议修改您的设计,以获得用户点击的视频列表,这会将他们带到另一个可以播放视频的活动。然后,您可以使用YouTube的嵌入式播放器和Vimeo的WebView技术。 至于在列表中获取这两种类型的视频,您可以创建一个模型对象,该对象具有跨YT和Vim视频(名称,desc等)的公用字段, –