如何在应用程序在后台运行时处理AVPlayer错误?

phi*_*phi 6 ios4 ios avplayer

我正在使用AVPlayer播放音频流,并且可以让它在后台播放.我想知道如何处理用户失去互联网连接的情况,这样我可以提供一些反馈,或者可能会在几秒钟后尝试重新建立播放.

编辑:我知道这个问题与AVPlayer有关,但是如果你有答案MPMoviePlayerController它也可能有用.现在,通过使用MPMoviePlayerController,我试图得到的MPMovieFinishReasonPlaybackError情况MPMoviePlayerPlaybackDidFinishReasonUserInfoKey,通过订阅,MPMoviePlayerPlaybackDidFinishNotification但如果我的音频是在后台播放,我打开飞机模式,我从来没有得到这个通知; 我只能得到MPMovieFinishReasonPlaybackEnded,而且我不知道如何将其与用户自己停止音频的情况分开.

ces*_*law 5

我试着四处寻找实际来源,但我记得在某处读过如果音频播放停止(无论出于何种原因)它会杀死后台线程.写这个问题的人谈到可能为流提供一些空的音频内容以保持线程活着.您可以从回叫错误发送本地通知,通知用户音频遇到错误,必须从应用程序中手动重新启动.没有使用足够的API来知道在这种情况下哪个回调是最好的.如果我找到我正在寻找的链接,我会更新.

编辑:这是Grant Pannell对音频流和多任务处理的看法.