我正在使用react-native-sound库。我有一个按钮,调用一个功能来播放一个简短的声音文件。播放声音文件15次后,即使功能加载,声音也不再播放。
以下是我的功能代码:
playSound() {
var s = new Sound('soundfile.mp3', Sound.MAIN_BUNDLE, (e) => {
if (e) {
console.log('error', e);
} else {
console.log('duration', s.getDuration());
s.play()
}
});
}
发生了什么,我该如何解决这个问题?
答案 0 :(得分:2)
原因是因为所有资源都用完了。完成后,您应该释放音频资源。
playSound() {
var s = new Sound('soundfile.mp3', Sound.MAIN_BUNDLE, (e) => {
if (e) {
console.log('error', e);
} else {
console.log('duration', s.getDuration());
s.play(()=>{
s.release()
})
}
});
}
此外,您可以重复使用Sound实例,而不是每次都重新创建新资源。