[LayaAir 1.0]音频在设置音量大小scale=0时SoundManager无法回调, 并且阻塞所有laya本身的callback
问题发现: 在使用SoundManager时播放音频期间暂停游戏, Laya.timer.scale设置为0, 导致短音频的callback无法触发, 并且导致游戏内之后的流程中所有callback如Laya.loader.load(), SoundManager.playSound()等一系列系统方法无法回调.
解决方案: 尽量不适用scale作为暂停时音量控制. 或者设置为很小的值如0.001.
简单写法如在init中:
SoundManager.playSound("XXX", this, ()=>{
console.log('触发1');
Laya.timer.scale = 0;
SoundManager.playSound("XXX", this, ()=>{
console.log('触发2');
SoundManager.playSound("XXX", this, ()=>{
console.log('触发3');
});
});
});
触发2/3是无法出现的. 哪怕把Laya.timer.scale再设置成1也无济于事.
解决方案: 尽量不适用scale作为暂停时音量控制. 或者设置为很小的值如0.001.
简单写法如在init中:
SoundManager.playSound("XXX", this, ()=>{
console.log('触发1');
Laya.timer.scale = 0;
SoundManager.playSound("XXX", this, ()=>{
console.log('触发2');
SoundManager.playSound("XXX", this, ()=>{
console.log('触发3');
});
});
});
触发2/3是无法出现的. 哪怕把Laya.timer.scale再设置成1也无济于事.
没有找到相关结果
已邀请:
要回复问题请先登录
0 个回复