HTML5 Audio, вызывающий сбой автономного режима и выход на домашний экран в IOS8

У меня есть сайт, который каждый раз, когда исполняется JavaScript document.getElementById('audioID').load(); или же document.getElementById('audioID').play(); это приведет к тому, что мой iPad/ iPod, работающий на iOS8 в автономном режиме, внезапно вылетит и выйдет на домашний экран. Тот же сайт под управлением обычного браузера Safari на iOS8 работает отлично. Я не мог воспроизвести эту проблему на iOS7 либо.

Эта проблема похожа на следующую проблему стека, которая, по-видимому, описывает ошибку IOS8: Почему видео HTML5 не воспроизводится в IOS 8 WebApp(webview)? за исключением того, что моя проблема касается аудио вместо видео и не просто не проигрывает аудио, но и разбивает автономное окно.

Кто-нибудь еще испытывал это, или знает, что именно может вызывать аварийное завершение автономного режима?

[ОБНОВИТЬ]

Похоже, что комбинация кнопки отправки и попытки воспроизвести звук в автономном режиме iOS8 приведет к сбою. Я создал краткий обзор этой ошибки здесь: https://gist.github.com/macmadill/262d65ad1c02936fca4b

[ОБНОВИТЬ]

Я перепроверил эту ошибку на 3 разных iPad, вот мои результаты:

iOS 8.1.2 - сбой автономного режима

iOS 8.3 - нет проблем

iOS 9.2.1 - без проблем

2 ответа

Единственное решение - использовать API Web Audio.

Я обнаружил, что https://github.com/goldfire/howler.js/ - отличная обертка, которая облегчает использование.

Удачи

Я столкнулся с той же проблемой. Для немного сложного обходного пути получается, что использование API Web Audio работало, даже когда "веб-приложение" было сохранено на домашнем экране ios. Смотрите следующее:

В некоторых примерах используется устаревший API. Например:

  • noteOn (x) теперь начало (x).
  • createGainNode () теперь является createGain()
Другие вопросы по тегам