2010-12-30 8 views
5

私はAVPlayerを使用してオーディオストリームを再生しており、バックグラウンドで再生し続けることができます。私は、ユーザーがインターネット接続を失っているので、何らかのフィードバックを提供したり、数秒後に再生を再確立しようとするような状況をどうやって処理できるか疑問に思っています。アプリがバックグラウンドで実行中にAVPlayerのエラーを処理するには?

編集:質問にはAVPlayerが関係していますが、回答がMPMoviePlayerControllerの場合は便利かもしれません。現在、MPMoviePlayerControllerを使用して、MPMoviePlayerPlaybackDidFinishNotificationに登録して、MPMoviePlayerPlaybackDidFinishReasonUserInfoKeyMPMovieFinishReasonPlaybackErrorケースを取得しようとしていますが、f.e.私のオーディオはバックグラウンドで再生されています。飛行機モードをオンにしても、この通知はありません。私はただMPMovieFinishReasonPlaybackEndedを得て、私はユーザーがオーディオを自分で停止するケースからそれを分ける方法を知らない。

答えて

4

私は実際のソースを調べてみましたが、オーディオ再生が(何らかの理由で)停止すると、バックグラウンドスレッドが強制終了することがあります。この問題について書いた人は、ストリームを生きた状態に保つために空のオーディオコンテンツをストリームに送る可能性について話しました。オーディオのエラーが発生したため、アプリケーション内から手動で再起動する必要があることをユーザーに通知するコールバックエラーからのローカル通知を送信することができます。この場合、どのコールバックが使用するのが最適かを知るには、APIを使いこなしてはいけません。私が探しているリンクが見つかったら、私は更新します。

EDIT:ここでは、Pannellのグラントはaudio streaming and multitaskingです。

+0

リンクが死んでいます:( – jocull

+1

私はWay Back Machineでコピーを見つけました。http://web.archive.org/web/20110525032820/http://digitaldj.net/2010/07/03/ios4-multitasking- developers-hell/ – jocull

+0

@jocull webarchiverの使い方 –

関連する問題