M P*_*ama 15 android html5-video android-browser android-4.0-ice-cream-sandwich android-4.4-kitkat
我想使用android 4冰淇淋三明治浏览器自动启动android html5视频.我尝试了许多html5视频的java脚本函数和autobuffer autoplay标签.但没有任何效果.我通过Android应用程序在webview中启动android chrome客户端,该客户端应该能够自动启动视频.单击播放按钮时播放视频但不播放自动播放.
是否限制在Android?另外需要注意的是,即使我们点击播放按钮并且视频正在播放和完成,也不会在chromeClient中调用回调方法.
我已经google了一下,在Android 4上找不到关于此问题的正面结果.
Kle*_*vič 23
似乎Android 4+改变了要求play()用户交互的方法的要求.如果play()从用户事件处理程序(例如.touchstart或mousedown)中触发,则只要在同一事件循环中运行该视频,就可以播放该视频.
这意味着你不应该使用异步触发器来调用play(),而是在没有setTimeout()这样的情况下在同一个事件处理程序中调用play ,所以像延时游戏这样的东西是不可能的.
一种方法是在Android 4上使用与在iOS中相同的技巧 - 使用第一个用户交互事件play()和pause()视频.这将使视频能够在以后进行操作,因为您在用户启动的操作期间播放了该视频.成功启动视频后,无论是否在事件处理程序循环内进行调用,您都可以在以后随时调用播放方法.
编辑:这是一个适用于HTC和三星的示例代码,但不适用于Galaxy Nexus 4.1(需要用户互动才能玩):
var myVideo = document.getElementById('myvideo');
myVideo.addEventListener('canplay', function() {
myVideo.play();
});
myVideo.load();
myVideo.play();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33317 次 |
| 最近记录: |