3

在我正在进行的一个项目中,我注意到,在 iOS 上,当铃声开关关闭时,声音会被静音。该项目基于 CreateJS,声音由 SoundJS 管理。

令人沮丧的是,其他使用声音/媒体的网站(youtube、facebook、soundhound、spotify 等)似乎不受铃声开关的影响。

我在 iOS 版本从 9.2 到 10.1.1 的几款不同的 iPhone 上进行了测试:都出现了相同的问题。

这种行为可能是什么原因?是否有任何文档可以解释如何解决它?

4

2 回答 2

3

旧线程,但我之前已经打过这个并且之前回答了一个关于 SO 的问题。

基本上,iOS 会在铃声类别中播放网络音频。我在媒体类别上播放 HTML 音频(如预期的那样)。您可以通过在后台播放无声的循环 html 声音来强制两者在媒体类别上播放。这确实有一个副作用 - 如果在 safari 打开时屏幕关闭,您现在可以选择播放游戏音频并在通知视图和锁定屏幕上切换播放/暂停。下面链接的解决方案不是一个超级强大的解决方案(即副作用),但它肯定会获得您正在寻找的行为。希望这可以帮助!

在这里查看我的答案 - https://stackoverflow.com/a/46839941/2103488

于 2019-02-22T19:34:47.487 回答
0

我不确定这是否是您的声音不会在铃声开关打开时播放的原因,但在 Mobile Safari 中自动播放声音有一个限制 - 它们必须由触摸事件触发(http://www.ibm.com /developerworks/library/wa-ioshtml5/ )

我假设您正在制作一个 web 应用程序,而不是在应用程序中使用诸如 Phonegap 或浏览器视图之类的东西。如果是后者,您可以尝试查看 AVAudioSession 类别,这些类别决定了您的应用程序与其他人的音频混合以及被铃声开关静音/不静音等内容。

于 2016-11-25T11:34:54.687 回答