微信小程序createInnerAudioContext从后台多次切到前台 语音会重复播放
这个问题可能是因为在多次切换后台和前台时,没有正确地销毁之前创建的音频实例。可以尝试在小程序生命周期的onHide和onUnload方法中调用音频实例的destroy方法来销毁实例,以确保在切换到后台时停止播放并释放资源。
const innerAudioContext = wx.createInnerAudioContext();
// ...
Page({
onHide() {
innerAudioContext.destroy();
},
onUnload() {
innerAudioContext.destroy();
}
})
另外,也可以在切换到前台时判断当前音频是否正在播放,如果正在播放,则调用pause方法暂停播放。
Page({
onShow() {
if (innerAudioContext.paused === false) {
innerAudioContext.pause();
}
}
})
原文地址: https://www.cveoy.top/t/topic/bDIs 著作权归作者所有。请勿转载和采集!