2014-12-04 103 views
0

我有一个嵌入式WebView的Android KitKat应用程序。该页面包含一个html5视频元素。视频加载正常,但播放()没有效果,直到我点击屏幕上的播放按钮,然后播放()和暂停()工作正常。我也试过myWebView.setWebChromeClient(new WebChromeClient());,但这没有什么区别。此外,这个相同的网页在Mac和Linux上的Chrome浏览器中运行良好。Android:无法播放/暂停html5视频,直到手动启动

+0

你在你的webview中启用了JavaScript吗? – Mus 2014-12-04 19:55:38

回答

0

嗯,我发现了这个问题。如果没有用户点击屏幕上的播放按钮,Android 4 +将不允许自动播放视频或程序化开始播放。这样用户将通过手动激活播放来隐含地确认带宽的使用。虽然我明白为什么对于有手机连接的手机用户来说这是合理的,但我的应用程序是带有Android HDMI的电视机。这是一个非常不幸的限制。查看更多在这里:Autostart html5 video using android 4 browser

编辑:有一种变通方法 - 而股票浏览器无法实现这一点,使用嵌入的WebView给你多一点控制:

WebView myWebView = (WebView) findViewById(R.id.webview); 
    myWebView.setWebChromeClient(new WebChromeClient()); 
    myWebView.getSettings().setMediaPlaybackRequiresUserGesture(false); 

这个问题解决了!