在 Android HTML5 播放器中开始播放所需的用户手势
Posted
技术标签:
【中文标题】在 Android HTML5 播放器中开始播放所需的用户手势【英文标题】:User gesture required to start playback in Android HTML5 player 【发布时间】:2016-03-21 14:12:30 【问题描述】:我在 android 上使用 html5 视频标签,有时 chrome 浏览器说它需要明确的用户手势/单击才能开始播放:
在“HTMLMediaElement”上执行“播放”失败:API 只能是 由用户手势启动
我知道这是 Android 中的一个已知问题,但我不明白为什么有时它会自动播放,而在其他情况下它需要用户操作!
我正在使用带有自动播放选项的视频标签。
【问题讨论】:
这个答案是否解决了您的问题:***.com/questions/32424775/… ? 【参考方案1】:自 Android SDK 17 起已禁用自动播放,以避免用户在播放视频时体验不佳(即不希望的播放、不希望的数据使用)。通常,视频应该只在用户操作之后播放。这是当今 Android 和 ios 的推荐行为。
但是,如果确实需要,您可以将 setMediaPlaybackRequiresUserGesture 设置为 false 以启用自动播放。记得检查 SDK 版本,因为在 Android SDK 17 之前没有这个选项。
int SDK_INT = android.os.Build.VERSION.SDK_INT;
if (SDK_INT > 16)
engine.getSettings().setMediaPlaybackRequiresUserGesture(false);
关于 Google 关于自动播放的决定在这里进行了长时间的讨论和辩论: http://chromium-bugs.chromium.narkive.com/cW5IXVgj/issue-178297-in-chromium-android-chrome-does-not-allow-applications-to-play-html5-audio-without-an
【讨论】:
非常感谢!!【参考方案2】:截至 2017 年 1 月 24 日
如果视频被静音,HTML5 视频标签可以在 android 上自动播放。您需要在标签中包含 muted 和 autoplay 属性以使其按预期工作。
这里是文章的链接:Autoplay on Chrome for Android as of version 53
【讨论】:
以上是关于在 Android HTML5 播放器中开始播放所需的用户手势的主要内容,如果未能解决你的问题,请参考以下文章
HTML5 视频播放()不播放 ionic 3“ios 和 android
html5开发,android中的微信内置浏览器如何让video标签的视频不全屏播放