我正在使用 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()
}
});
}
发生了什么,我该如何解决这个问题?
最佳答案
原因是因为所有的资源都被用完了。处理完音频资源后,您应该释放它们。
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 实例,而不是每次都重新创建一个新资源。
关于android - 在一定数量的点击后,React-Native 声音剪辑停止工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41196649/