我在显示网页视图YouTube链接。我想自动播放的链接。问题是,打开链接后,我必须点击视频,然后在播放视频,但我想,视频应该被自动播放。
提前致谢。
myWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
view.loadUrl(request.getUrl().toString());
return true;
}
}
myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.getSettings().setMediaPlaybackRequiresUserGesture(false);
myWebView.loadUrl("https://www.youtube.com/watch?v=YyDnYaFtRS0");
测试的设备:1)晶晨半导体的Android媒体盒(安卓6.0.1) - >不工作。 2)的Nexus 5(的Android 6.0) - >工作。
试试吧
myWebView.setWebViewClient(新WebViewClient(){
公共无效onPageFinished(的WebView视图,字符串URL {
web.loadUrl(“JavaScript的:(函数(){
document.getElementsByTagName( '视频')[0] .play(); })()“);
}
});
我认为这是不可能的WebView或Android浏览器。为了实现自动播放,我想你需要“YOUTUBE API”。
检查下面的链接:
1] There's no way method to do autoplay video on android platform?
2] Youtube Api android autostart
上述这些链接会给你自动播放的想法,以及YouTube的API。更多的细节,你可以检查此link。
我可以用JavaScript编程点击视频元素来解决这个问题。
webView.loadUrl("javascript:(function() {"
+ "var videoElem = document.querySelectorAll('video');"
+ "if (videoElem.length > 0) {"
+ "videoElem[0].click(); return;"
+ "} else {"
+ "console.log('Not Found Video Element..!!');"
+ "}"
+ "})()");