微信小程序wx.createInnerAudioContext播放play报错解决
微信小程序wx.createInnerAudioContext播放play报错errMsg: “operateAudio:fail jsapi has no permission, event=operateAudio, runningState=background, permissionMsg=permission got, detail=jsapi has no permission”
解决方案:
在创建onError回调函数再次执行播放函数
//播放语音 yuyinPlay(e) { if (this.src == '') { console.log(暂无语音); return; } this.innerAudioContext.src = this.src this.innerAudioContext.play(); }, onReady() { // ios端音频不能在静音下播放处理 wx.setInnerAudioOption({ obeyMuteSwitch: false, success: function (res) { console.log("开启静音模式下播放音乐的功能"); }, fail: function (err) { console.log("静音设置失败"); }, }); //创建内部 audio 上下文 InnerAudioContext 对象。 this.innerAudioContext = wx.createInnerAudioContext(); this.innerAudioContext.onError((res) => { console.log(res); this.yuyinPlay(); wx.showToast({ title: '语音播放失败', icon: 'none', }) }) },