私はいくつかのボタンをクリックすると実際に短いサウンドビットを再生する小さなウェブアプリケーションを持っています。 iOS(iPad)のモバイルSafariを明示的にターゲットにしています。モバイルSafari:オーディオ+キャッシュマニフェスト
モバイルサファリでこのコンテキストでHTML5オーディオのいくつかの「欠点」について読んで、いくつかの「ハック」やトリックを試してみたところ、Safariが単純に思えるより良い単語)壊れた:
ボタンAのクリックでサウンドAを再生することができます(それは始めるのに時間がかかります - 私はそれは下りしていると思いますか?)その後、ボタンをクリックしますBは直ちに音Aを再び再生する。ボタンCと同じです。場合によっては、別のサウンド、時には正しいサウンドを再生することもあります。しかし、ほとんどがAです。使用されているフォーマットは.aiffで、現在.m4aです。
自分自身をいくつかの小さなバージョンを書いた後、私はFunnily十分..サウンドの読み込み/再生/などを扱うようにBuzz図書館で行くことに
を決め、彼らのデモはかなり正確に何がゲームを含みとが同じエラー動作を引き起こす必要があります。私は、タブ内のモバイルSafariのオーディオプレーヤーがBuzzデモゲーム(!)から特定のサウンドを再生する状況になってしまった。
キャッシュマニフェストがApplesのプリロード制限を克服し、オフラインモードでボタンを押した直後にサウンドを再生するようにすることができると期待していました。しかし、アプリケーション全体がキャッシュされていることを確認した後、私はオフラインモードでサウンドを再生/聞くことができません。
誰かが何とかこのようなことをすることができましたか?( - Appleは、特定の物事を処理する方法を見た、私は」...しかし、多くの応答を期待しないでください)
アップデート1:この答えで
の例では、同じ効果が発生します。How to synthesize audio using HTML5/Javascript on iPad
アップデート2:
iOS(とSafari)をアップデートすると、オーディオのバグが解決されるようです。ただし、キャッシュマニフェストはオーディオファイルに影響を与えないようです。これらのファイルはまったく利用できません。
キャッシュマニフェストを削除した後、アプリは正常に機能しますが、それを「ホーム画面」に追加して再読み込みすると、オーディオが再生されなくなります。
ありがとうございます!ここには大きなアドバイスがたくさんあります。間違いなくいくつか試してみる。 – polarblau
あなたが知っておくべきもう1つのことは、iOS上でオーディオやビデオをキャッシュすることが不可能であることです。 appcacheでさえ。 – idbehold
あなたはコードの例を挙げることができます - プレイ位置を適切な開始位置に移動します。また、3秒間トラックを再生したい場合、どのように停止するのですか? – Jon