公开Chrome浏览器不能自动播放音频的解决办法

有多个人问到我这个问题,就把解决方法发出来吧
除了以下方法,还可以在设计上让玩家主动点击一次屏幕来实现播放音频效果

//在自己封装的播放音频的函数里面先调用checkPlay()方法
public checkPlay() {
        /** 解决警告The AudioContext was not allowed to start. It must be resume (or created) after a user gesture on the page. */
        if (cc.sys.__audioSupport && cc.sys.__audioSupport.WEB_AUDIO) {
            if (cc.sys.__audioSupport.context) {
                //suspended暂停
                if (cc.sys.__audioSupport.context.state == "suspended") {
                    cc.sys.__audioSupport.context.resume();
                }
            }
            else {
                cc.sys.__audioSupport.context = new (window.AudioContext || window.webkitAudioContext || window.mozAudioContext)();
            }
        }

    }
1赞

请问这个解决方案适用于哪个版本,目前2.0.5上cc.sys.__audioSupport这个不支持

我们的项目用的是1.8.2版本的,当初是通过研究源码找到的解决方法

尝试在 2.1.2的版本中使用这种方法解决,但音频还是没有自动播放,cc.sys.__audioSupport.context.state 还是为 suspended…有人知道什么原因吗?

有适用于2.1.3的吗