Pphonegap 1.8.1 と Sencha Touch 2 で作成された、HTML5
オーディオを再生する iOS アプリがあります。info.plist で UIBackgroundModes -> audio を設定し、この回答に従って、iOS6 でバックグラウンド オーディオを許可しました。
私の問題は、バックグラウンドでオーディオを再生するたびに、それが持続し、以前に再生したトラックと重複することです。再現するには:
- iOS 6 デバイスのアプリ内で HTML5 オーディオを再生します。
- ディスプレイのオンとオフを切り替えて、ロック画面にします (オーディオは期待どおりに再生され続けます)。
- ロックを解除してアプリに戻ります。
- HTML5 オーディオを停止し、別のトラックを再生します。
- ディスプレイのオンとオフを切り替えて、ロック画面にします (オーディオは期待どおりに再生され続けます)。
- ホームボタンをダブルタップしてロック画面にオーディオコントロールを表示し、一時停止ボタンをタップします。
結果:
現在再生中のオーディオは一時停止されますが、前のオーディオ (手順 1 から) の再生が開始されます。次のトラック ボタンをタップし、前のトラックをタップして再生をタップすると、両方のオーディオ アイテムが同時に再生されます。
注:
iOS 5.1 では、以前に再生されたバックグラウンド オーディオは保持されません。
アプリから最後に再生されたオーディオのみを iOS 6 のバックグラウンドで利用できるようにする方法はありますか?