如何解决Android api 16 webview 不播放 html 5 视频
我有一个 HTML
文件,其中包含 JS
和 CSS
以及多个一个接一个播放的视频,在网络浏览器上一切正常,并且还更改我正在使用的 android 上的视频之间工作,只是视频没有播放,即使我使用 autoplay
和 mute
和 loop
如下:
<video autoplay="" muted="" loop="" src="placeholder.mp4" type="video/mp4" id="Video_1" style="display: inline-block">
Your browser does not support HTML video.
</video>
我尝试将 autoplay=""
更改为 autoplay
,并将 autoplay=""
更改为 autoplay="autoplay"
,但没有任何效果。
我的网络视图设置代码
webView = (WebView) findViewById(R.id.webview);
webView.setWebViewClient(new WebViewClient());
webView.setWebChromeClient(new WebChromeClient());
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1)
webView.getSettings().setmediaplaybackRequiresUserGesture(false);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
WebView.setWebContentsDebuggingEnabled(true);
}
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.norMAL);
webSettings.setUseWideViewPort(true);
webSettings.setDomStorageEnabled(true);
webView.clearCache(true);
webView.clearHistory();
webSettings.setLoadWithOverviewmode(true);
webSettings.setPluginState(WebSettings.PluginState.ON_DEMAND);
webSettings.setJavaScriptCanopenWindowsAutomatically(true);
我已尝试更改设置并最终得到上述所有设置(有些可能对我的代码无用)
我试过在 js 文件中播放视频
function play_all_Videos() {
var all = document.getElementsByTagName("video");
if (!all.length == 0) {
for (var i = 0,max = all.length; i < max; i++) {
all[i].play();
}
}
}
play_all_Videos();
同样来自安卓工作室
webView.setWebViewClient(new WebViewClient() {
// autoplay when finished loading via javascript injection
public void onPageFinished(WebView view,String url) { webView.loadUrl("javascript:(function() { document.getElementsByTagName('video')[0].play(); })()"); }
});
还为 android:hardwareAccelerated="true"
文件尝试了 manifest
。
我怀疑某些 webview 设置是导致此问题的原因,但我无法控制
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。