Autostart html5视频使用Android 4浏览器

我想自动启动 android html5视频使用 Android 4冰淇淋三明治浏览器.我尝试了许多html5视频的java脚本功能和autobuffer自动播放标签.但没有任何工作.我通过Android应用程序在webview中启动android chrome客户端,该客户端应该能够自动启动视频.当点击播放按钮视频播放但不是自动播放.

是否限制在Android?
其他要注意的事情是,即使我们点击播放按钮,也不会在chromeClient中调用回调方法视频正在播放&完成.

我有谷歌和在Android 4上发现这个问题没有发现任何积极的结果.

解决方法

看起来Android 4改变了play()方法的要求,需要用户交互.如果您从用户事件处理程序(例如touchstart或mousedown)中触发play(),则只要在相同的事件循环中运行视频即可播放视频.

这意味着你不应该使用异步触发器来调用play(),而是在没有setTimeout()的情况下在同一个事件处理程序中调用play,所以像时间延迟播放这样的东西是不成问题的.

一种方法是在Android 4上使用与iOS相同的技巧 – 使用第一个用户交互活动来播放()并暂停()视频.这将使视频稍后进行操作,因为您在用户启动的操作期间播放该视频.成功启动视频后,您随时可以随时调用播放方法,无论该通话是否在事件处理程序循环内进行.

编辑:这是一个示例代码,适用于HTC和三星,但不是galaxy Nexus 4.1(需要用户互动才能播放):

var myVideo = document.getElementById('myvideo');

myVideo.addEventListener('canplay',function() {
  myVideo.play();
});

myVideo.load();
myVideo.play();

相关文章

HTML5和CSS3实现3D展示商品信息的代码
利用HTML5中的Canvas绘制笑脸的代码
Html5剪切板功能的实现
如何通过HTML5触摸事件实现移动端简易进度条
Html5移动端获奖无缝滚动动画实现
关于HTML5和CSS3实现机器猫的代码