需求:
* 你希望有什么能力?
小程序在后台运行的时候能够继续进行音频播放。
小程序的语音播放功能,当小程序在前台运行时没有任何问题,但是当小程序后台运行时,createInnerAudioContext语音播放功能就无法使用,使用背景音乐播放接口播放的话,就会报没有权限错误。
* 你需要这个能力的场景是 ?
使用小程序进行收款消息语音播报的功能。微信买单可以实现,小程序退出后仍能实现买单信息语音播报。但是我们的小程序后台运行后就无法进行音频播放,无法提示用户具体的收款金额。
在进入到后台继续播放之前设置的音乐是可以播放的。但是进入后台运行后,当播放完了,想重新设置新的src的时候,就会报上面截图中的错误,请问这个有办法解决吗?我们的业务是当有新订单时会调用playBackAudio方法,部分代码如下:
const playBackAudio =(url) => {
console.log(‘set play’, url);
return new Promise((resolve, reject) => {
const audio = wx.getBackgroundAudioManager();
audio.title = “收款语音播报”;
audio.epname = “”;
audio.singer = “”;
// audio.onPlay(()=>{console.log(‘play’,audio.src)});
var ok = false;
audio.onEnded(() => {
console.log(‘end’, audio.src);
ok=true;
resolve();
})
audio.onError((res) => {
console.log(‘eeeee’, res.errMsg)
ok=true;
reject();
})
audio.onNext((res) => {
console.log(‘next’, res)
ok=true;
resolve();
})
audio.onStop((res) => {
console.log(‘stop’, res)
resolve();
});
audio.src = url;
audio.play();
})
}