【问题标题】:Can't play sound on iOS无法在 iOS 上播放声音
【发布时间】:2016-07-29 04:05:54
【问题描述】:

来自https://github.com/aframevr/aframe/issues/1684的交叉发帖

说明:

我无法在 iOS 上播放音频,无论是在 Safari 还是 Chrome 上。

我尝试了什么:

  • autoplay 直接在组件上。 #1463 让我立刻想到这行不通。但 #1463 描述暗示它不适用于 Android 版 Chrome,但它确实适用于我。

  • 使用entity.components.sound.play(),同时带有 setTimeout 和用户事件。

这两种方法在适用于 Android 的 Chrome 和桌面浏览器(Chrome、Safari 和 Firefox)中都能正常工作。在 Firefox for Android 中,我的应用程序在我尝试音频之前就崩溃了,但这只是信息,我不关注 Firefox。

我通过远程调试检查了 iOS Safari 控制台和网络选项卡,没有任何错误。

另外,作为一个旁注,我尝试了a-wakens demo,它的工作原理:

  • Chrome、Safari 和 Firefox(桌面)、Firefox (Android)

但没有工作:

  • Chrome (Android)、Safari 和 Chrome (iOS)

所以,我对如何在 iOS 上播放音频一无所知,希望能得到一些提示。

  • A-Frame 版本:0.2.0
  • 平台/设备:iOS 9.3.2、iPhone 6、Safari 和 Chrome 51

【问题讨论】:

  • 仅供参考,在 v0.5.0 下是 entity.components.sound.playSound()

标签: aframe


【解决方案1】:

iOS 和可能其他浏览器上的网络音频需要用户交互:https://paulbakaus.com/tutorials/html5/web-audio-on-ios/

看起来您可能需要挖掘 WebAudio 源的声音组件并调用 noteOn

另外,Web Audio AnalyserNode 仍在移动浏览器中推出。移动版 Chrome 应该很快就有了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-11
    • 1970-01-01
    相关资源
    最近更新 更多