【问题标题】:HTML 5 Autoplay Google Chrome Android Not PlayingHTML 5 自动播放 Google Chrome Android 未播放
【发布时间】:2013-11-01 20:15:41
【问题描述】:

当用户在浏览器上打开页面时,我正在尝试自动播放视频。在我的笔记本电脑上,自动播放适用于所有浏览器,但在 android 上,它不适用于 Google Chrome,而在 Iphone 中,它不适用于 safari。我已经进行了搜索,android 中的 google chrome 不支持 html5 视频标签,所以我使用了一些 javascript,但它也不起作用。 为什么?我该怎么办? 这是我的代码

<video id="video" autoplay autobuffer controls="controls" allowFullScreen >
<source src="video.mp4" type="video/mp4">
<source src="video.webm" type="video/webm" webView.mediaPlaybackRequiresUserAction = NO;>
<source src="video.theora.ogv" type="video/ogg">
<source src="video.flv" type="video/flv">
<source src="video.vob" type="video/vob">
<source src="video.mov" type="video/mov">
</video>    
<script type="text/javascript">
var video = document.getElementById('video');                           video.addEventListener('video',function(){
video.play();
});

                                video.addEventListener("domready", function(){                                              video.play();
});

                                video.addEventListener("ended", function(){ 
window.location = "http://www.google.com"
});
</script>

【问题讨论】:

    标签: android google-chrome html5-video autoplay


    【解决方案1】:

    Android 版 Chrome 从 53 版开始支持视频的静音自动播放。如果设置了自动播放和静音,则视频元素进入视野后将自动开始播放,并且静音视频的播放可以通过播放程序以编程方式启动()。以前,无论静音状态如何,移动设备上的播放都必须由用户手势启动。

    <video autoplay muted>
      <source src="video.webm" type="video/webm" />
      <source src="video.mp4" type="video/mp4" />
    </video>
    

    【讨论】:

      【解决方案2】:

      我也尝试在 android chrome 上自动播放视频,结果发现:

      On Android, html5 video autoplay attribute does not work

      &num;1 klobag@chromium.org

      是的。就像设计一样。 Android 版 Chrome 禁用了“自动播放”功能。

      显然是故意的。

      【讨论】:

      • @Randy,你有这方面的文档吗? IE。允许哪些类型的事件?显然 window.onload 或 video.loadedmetadata 是不可接受的。
      • 我没有这方面的任何文档。这主要是通过反复试验。根据我的经验,似乎任何物理触摸事件都允许 javascript 启动视频。我正在开发一个带有 WebView 的应用程序,并且能够将 javascript 发送到 WebView。奇怪的是,这似乎算作一个有效的用户触摸“事件”,它让我可以播​​放视频。
      • @Randy 我真的很想听听更多关于您如何设法从应用程序触发 javascript play() - 您能详细说明一下吗?
      • @Randy - 找到 this setting - 如果您正在为 android 4.1+ 开发,它应该会有所帮助。救了我的命。
      • 感谢@EdHinchliffe!我会试一试。而我之前使用的是一个完整的“黑客”。基本上,当您使用webview.loadUrl('javascript:fakeEvent();'); 时,它似乎会在短时间内“提升”权限(或某些东西)。这个“提升”级别可以让我在视频中致电vid.play()
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-18
      相关资源
      最近更新 更多