我使用Ionic Native Audio插件加载背景音乐,并使用--livereload标志(离子cordova运行android --livereload)与第一次运行一切都很好,但如果我在代码并保存它们,然后我收到了以下控制台消息:
“已存在指定音频ID的引用。”
正如我所看到的那样,当离子重新编译代码后,音频没有停止。
这是AppComponent构造函数中的代码:
platform.ready().then(() => {
// Okay, so the platform is ready and our plugins are available.
// Here you can do any higher level native things you might need.
statusBar.styleDefault();
statusBar.hide();
splashScreen.hide();
self.nativeAudio.preloadComplex('bgMusic', 'assets/sounds/bg-music.mp3', 1, 1, 0).then(() => {
console.log('success');
self.nativeAudio.play('bgMusic', () => console.log('bgMusic is done playing'));
}, (error) => {
console.log(error);
});
});
我试图在ngOnDestroy方法中卸载音频,但我认为在Ionic中没有调用它。
是否有任何解决方法可以防止这种情况,并在每次更改代码后重置声音?