WebView setMediaPlaybackRequiresUserGesture(false)不起作用

时间:2016-05-19 20:14:08

标签: javascript android webview

我正在尝试在我的网页浏览中制作youtube视频自动播放。经过许多其他页面后,我认为这些设置是必要的,以使其工作:

    webView.setWebChromeClient(new WebChromeClient());
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setDomStorageEnabled(true);
    webView.getSettings().setMediaPlaybackRequiresUserGesture(false);

另外,我在pageFinished方法中放置了以下javascript代码:

     webView.setWebViewClient(new WebViewClient() {
        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
            if (view.getProgress() == 100) {
                webView.loadUrl("javascript:document.getElementsByTagName('video')[0].play();"
                );
            }
        }
    });

由于setMediaPlaybackRequiresUserGesture方法仅在API 17之后引入,我检查了我的测试设备规格,它是API 22和android 5.但这仍然不起作用。但是,启动视频的Javascript代码仅在视频播放并暂停至少一次后才有效。任何修复?如果使用webview无法实现此功能,则可以理解任何替代解决方案。

0 个答案:

没有答案