我在android上使用HTML5视频标签,有时chrome浏览器说它需要一个明确的用户手势/点击才能开始播放:
未能在“HTMLMediaElement”上执行“play”:API只能通过用户手势启动
我知道这在Android中是一个已知的问题,但我不明白的是,为什么有时它会自动播放,而在其他情况下,它需要用户操作!
我使用的视频标签与自动播放选项。
发布于 2017-01-24 19:46:08
发布于 2015-12-30 19:04:25
自从Android 17之后,自动播放就被禁用了,以避免视频回放(即不想要的回放、不想要的数据使用)的糟糕用户体验。通常,视频只应在用户操作之后播放。这是目前安卓和iOS的推荐行为。
但是,如果确实需要,可以将setMediaPlaybackRequiresUserGesture设置为false以启用自动播放。请记住检查SDK版本,因为在Android 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
https://stackoverflow.com/questions/34295126
复制相似问题