避免在 iOS 上停止 howler.js sprite 播放的背景音频

问题描述 投票:0回答:1

我正在制作一个小型浏览器游戏作为研究项目,使用 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

javascript ios web-audio-api howler.js
1个回答
0
投票

在 ios 中,如果您将应用程序置于后台,那么您的选项卡将处于非活动状态。因此,添加事件监听器来检查应用程序是否再次播放音频是否进入后台。

document.addEventListener('visibilitychange',() => {
    sound.pause();
    sound.play();
});
© www.soinside.com 2019 - 2024. All rights reserved.