2012-05-04 8 views
0

私はAVPlayerを使用してURLから音楽を再生しています。再生ボタンをクリックすると、バッファリングのために再生に時間がかかります。私が以下に説明した2つのケースがあります。AVPlayerバックグラウンド再生の問題

成功例:再生ボタンとAVPlayerバッファをクリックして再生を開始します。プレイヤーが再生を開始した後、私はホームボタンを押していると、アプリケーションはバックグラウンドに移動し、再生が続けられます。

エラーの場合:再生ボタンをクリックすると、AVPlayerがバッファリングを開始します。私はAVPlayerがバッファリングしている間、そしてその再生を開始する前に、ホームボタンを押してアプリケーションをバックグラウンドに移動します。再生コマンドが既に発行されていても、AVPlayerはバックグラウンドで再生されません。

と提案?事前に

おかげで、

ノルベルト

+0

どの時点でAudioSessionをアクティブにしていますか? AudioSessionSetActive(true); – SteveB

+0

- (void)applicationWillEnterForeground:(UIApplication *)application {if(![avplayer isPlaying]){//音声を再生するメソッドを呼び出す通知を}} –

+0

ここを見てください:http://stackoverflow.com/questions/ 4771105/how-do-i-get-my-avplayer-to-app-in-in-background –

答えて

2

バッファリングが2秒以上かかった場合は、タスクは、再生開始前に凍結されます。

使用

task = [application beginBackgroundTaskWithExpirationHandler:... 

第二の問題は、リモートコントロールを取得していない場合は、バックグラウンドで再生を開始しようとした場合AVPlayerのステータスが失敗したということです。

[application beginReceivingRemoteControlEvents]; 

これらのいずれかで問題を解決する必要があります。

関連する問題