0

JavaScript が実行されるたびに、スタンドアロン モードで iOS8 を実行している iPad/iPod が突然クラッシュしてホーム画面が終了するサイトがdocument.getElementById('audioID').load();ありdocument.getElementById('audioID').play();ます。iOS8 で通常の Safari ブラウザを実行している同じサイトは、まったく問題なく動作します。この問題は iOS7 でも再現できませんでした。

この問題は、IOS8 のバグを説明しているように見える次のスタックの問題に似ているようです: Why HTML5 video does not play in IOS 8 WebApp(webview)? ただし、私の問題はビデオではなくオーディオを扱っており、オーディオの再生に失敗しているだけでなく、スタンドアロン ウィンドウがクラッシュしています。

他の誰かがこれを経験したことがありますか、またはスタンドアロンモードがクラッシュする原因を正確に知っていますか?

[アップデート]

送信ボタンと iOS8 のスタンドアロン モードでオーディオを再生しようとすると、クラッシュが発生するようです。ここでこのバグのデモを行う簡単な要旨を作成しました: https://gist.github.com/macmadill/262d65ad1c02936fca4b

[アップデート]

このバグを 3 台の異なる iPad で再テストしました。結果は次のとおりです。

iOS 8.1.2 - スタンドアロン モードがクラッシュした

iOS 8.3 - 問題なし

iOS 9.2.1 - 問題なし

4

2 に答える 2

-1

唯一の解決策は、Web Audio API を使用することです。

https://github.com/goldfire/howler.js/ は、使いやすくする優れたラッパーであることがわかりました。

幸運を

于 2015-03-30T14:16:48.613 に答える
-1

同じ問題に遭遇しました。少し複雑な回避策として、「webapp」が iOS のホーム画面に保存されている場合でも、Web Audio API を使用すると機能することがわかりました。以下を参照してください。

一部の例では、非推奨の API を使用しています。例えば:

  • noteOn(x) は start(x) になりました。
  • createGainNode() は createGain() になりました
于 2015-03-01T14:00:40.513 に答える