除非声音静音,否则不会播放Webview视频(iframe)



我正试图在android java中使用webview播放IFRAME视频,视频加载正确,但拒绝播放,除非声音静音。请帮忙。这是我的webView代码:

private void playVideoOnWebView(String videoUrl) {
videoWebViewPlayer = findViewById(R.id.videoPlayerWebView);           
videoWebViewPlayer.setVisibility(VISIBLE);
videoWebViewPlayer.getSettings().setJavaScriptEnabled(true);    
videoWebViewPlayer.getSettings().getAllowContentAccess();
videoWebViewPlayer.getSettings().setDomStorageEnabled(true);
videoWebViewPlayer.getSettings().setAppCacheEnabled(true);videoWebViewPlayer.getSettings().setAppCachePath(getApplicationContext().getFilesDir().getAbsolutePath() + "/cache");
videoWebViewPlayer.getSettings().setDatabaseEnabled(true);
videoWebViewPlayer.getSettings().setDatabasePath(getApplicationContext().getFilesDir().getAbsolutePath() + "/databases");
videoWebViewPlayer.getSettings().setPluginState(WebSettings.PluginState.ON);
videoWebViewPlayer.getSettings().setDomStorageEnabled(true);
videoWebViewPlayer.setWebChromeClient(new WebChromeClient());
videoWebViewPlayer.loadUrl(videoUrl);
}

这是网页上的iframe

<iframe id="iframe" style="width: 100%; border-width: 0px; height: 100%;" src="https://player.vimeo.com/video/259666821?loop=false&amp;byline=false&amp;portrait=false&amp;title=false&amp;speed=true&amp;transparent=1&amp;gesture=media" allowfullscreen="" allowtransparency="" allow="autoplay"></iframe>

在网络/移动标准上有一个约定,自动播放视频应该静音。它可以防止干扰,例如,你打开一个网站或应用程序,它开始播放一些东西,但你正在开会。

"请记住,呈现静音的音轨仍然是音频曲目,并且它们的存在会影响视频是否在全部的在这种情况下,不会播放带有静音音轨的视频。这个音轨应该被删除,或者,静音属性可以在媒体元素上设置。

参考文献:

https://developers.google.com/web/updates/2017/09/autoplay-policy-changes

https://webkit.org/blog/7734/auto-play-policy-changes-for-macos/

https://vimeo.zendesk.com/hc/en-us/articles/115004485728-Autoplaying-e-looping-v%C3%ADdeos-公司

最新更新