HTML5音频导致独立模式崩溃并退出到IOS8中的主屏幕

时间:2015-01-20 18:29:23

标签: ipad safari ios8 html5-audio ios-standalone-mode

我有一个网站,每当javascript执行document.getElementById('audioID').load();document.getElementById('audioID').play();时,它将导致我的iPad / iPod在独立模式下运行iOS8突然崩溃并退出到主屏幕。在iOS8上运行普通Safari浏览器的同一站点运行完美。我无法在iOS7上重现这个问题。

此问题似乎与下面的堆栈问题相似,似乎是在描述IOS8错误:Why HTML5 video doesn't play in IOS 8 WebApp(webview)?,除了我的问题涉及音频而不是视频,并且不仅仅是无法播放音频而且它正在崩溃独立窗口。

有没有其他人经历过这种情况,或者知道究竟是什么导致独立模式崩溃?

[UPDATE]

似乎是提交按钮的组合以及尝试在iOS8的独立模式下播放音频会导致崩溃。我已经创建了一个快速的要点,在这里演示这个错误:https://gist.github.com/macmadill/262d65ad1c02936fca4b

[UPDATE]

我在3个不同的iPad上重新测试了这个错误,这是我的结果:

iOS 8.1.2 - 独立模式崩溃

iOS 8.3 - 没问题

iOS 9.2.1 - 没问题

2 个答案:

答案 0 :(得分:-1)

我遇到了同样的问题。对于稍微复杂的解决方法,事实证明即使将“webapp”保存到ios主屏幕,使用Web Audio API也能正常工作。请参阅以下内容:

部分示例使用已弃用的API。例如:

  • noteOn(x)现在是start(x)。
  • createGainNode()现在是createGain()

答案 1 :(得分:-1)

唯一的解决方案是使用Web Audio API。

我发现了那个 https://github.com/goldfire/howler.js/ 是一个很好的包装,使它易于使用。

祝你好运