从 3.2.0 版本开始可用
浏览器为了防止网页自动播放音视频对用户造成干扰,对视频的自动播放功能做了限制。在产品设计中,应提前引导用户与页面产生交互,当产生交互后再调用类似虚拟背景视频之类的依赖视频播放的功能。
值得注意的是: 由于各浏览器厂商对于自动播放策略的实现存在差异,即使提前引导用户与页面产生交互,也不能确保不会出现自动播放失败错误。(如:微信浏览器)
因此,建议使用 ARSession
的 mediaPlaybackUserInteractionRequiredCallback
回调,在这个回调函数中弹窗引导用户与页面产生交互后,恢复视频播放。
const session = ARSDK.createSession({ canvas, authorization: ..., mediaPlaybackUserInteractionRequiredCallback: (resolve, reject) => { // 弹出一个带按钮的窗口,告知用户需要播放视频,引导用户点击按钮。在点击按钮的事件中调用 `resolve()` // Present a modal view that guide the use to tap a button to continue playing video. Call `resolve()` in the button's click handler. }, });