UIBackgroundModes不起作用

时间:2011-02-20 20:28:08

标签: ios background audio-streaming

我重写了关于UIBackgroundModes的Apple文档,这就是它所说的:

  

当此键存在时,系统的   音频框架自动阻止   您的申请被暂停   当它移动到后台时。如   只要它播放音频,   应用程序继续在   支持该音频的背景。

但是我有一个使用AVPlayer类播放音频流的应用程序,它无法使用它。这个键假设是为了节省我们明确实现音频会话的工作。谁能告诉我为什么这不起作用呢?有没有人使用它并使这项工作?

2 个答案:

答案 0 :(得分:4)

在播放音频之前尝试执行以下操作:

NSError *sessionError = nil;
AVAudioSession *session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayback error:&sessionError];

答案 1 :(得分:0)

确保AVPlayer的代码实际上正在运行。在我的情况下,即使我为Core Location启用了密钥,如果我实际上没有通过调用start在代码中使用,则应用程序将被暂停,就像没有定义密钥一样。出于这个原因,我通常不会stop核心位置,只是让它使用最不准确的选项来保留设备电源,但继续使用后台运行模式。