我正在制作一个小型浏览器游戏作为研究项目,使用 howler.js 2.0 处理音效。
当我在 iOS 上玩游戏并正在听音乐(例如,在音乐播放器应用程序中)时,游戏音效将停止背景音频。实际上,我相信所有背景音频都会在游戏加载时停止。
有什么办法可以防止这种情况并保持背景音频继续播放吗?
我也希望避免音频闪避,但如果这是唯一的选择,我也可以接受。
游戏在这里: http://ashryanbeats.com/apps/guessing-game/index.html
Howler是这样调用的:
var sound = new Howl({
src: ['sounds/game-sounds.ogg', 'sounds/game-sounds.mp3'],
sprite: {
warmSound: [0, 750],
coldSound: [875, 950],
winSound: [1930, 2500],
sameSound: [4518, 850],
loseSound: [6093, 1700]
}
});
howler.js 2.0 参考:https://github.com/goldfire/howler.js/tree/2.0
在 ios 中,如果您将应用程序置于后台,那么您的选项卡将处于非活动状态。因此,添加事件监听器来检查应用程序是否再次播放音频是否进入后台。
document.addEventListener('visibilitychange',() => {
sound.pause();
sound.play();
});