Android:“无法在'HTMLMediaElement'上执行'play':API只能由用户手势启动 [英] Android: "Failed to execute 'play' on 'HTMLMediaElement': API can only be initiated by a user gesture

查看:1887
本文介绍了Android:“无法在'HTMLMediaElement'上执行'play':API只能由用户手势启动的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在研究HTML5视频播放器自动化(测试页面是一个html页面)。我试图通过Javascript调用 myPlayer.Play()。但是在Android上,我收到了这个错误:

I'm working on a HTML5 video player automation(test page is a html page). I tried to call myPlayer.Play() through Javascript. On Android, however, I got this error:


无法在'HTMLMediaElement'上执行'play':API只能是
。用户手势发起。

Failed to execute 'play' on 'HTMLMediaElement': API can only be initiated by a user gesture.

发送 Play()请求后。

我知道 autoplay 在许多设备上被禁用,以节省用户带宽。但第一次 Play()似乎也需要用户手势。为什么我可以自动测试播放器设备?

I know autoplay is disabled on lots of devices on purpose to save users bandwidth. But the first time Play() seems also needed the user gesture. What is the workaround for this so that I can automate testing for the player device?

推荐答案

您可以禁用此安全功能。例如:

You can disable this security function. For example:

WebView mWebView = (WebView) findViewById(R.id.web_view);
mWebView.getSettings().setMediaPlaybackRequiresUserGesture(false);

API版本17及更高版本提供

Available in API versions 17 and above

更多信息请参阅此

这篇关于Android:“无法在'HTMLMediaElement'上执行'play':API只能由用户手势启动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆