首页 文章

AVAudioSession背景模式问题

提问于
浏览
2

我已经设置了AVAudioSession来在后台播放音乐

AVAudioSession *audioSession = [AVAudioSession sharedInstance];

NSError *setCategoryError = nil;
[audioSession setCategory:AVAudioSessionCategoryPlayback error:&setCategoryError];
if (setCategoryError) {
}

NSError *activationError = nil;
[audioSession setActive:YES error:&activationError];
if (activationError) { 
}

还在我的plist文件中添加了“必需的背景模式” .

当我播放远程文件并且iPhone进入后台时,音频会继续播放 . 但是当我在我的应用程序(MPMediaItem URL)中播放iPod中的歌曲时,它将不会继续在后台播放 .

我错过了什么?

1 回答

  • 0

    你没有遗漏任何东西 . 当用户开始播放iPod中的音乐时,它将阻止您的应用播放任何进一步的音频 .

    如果你的意思是别的,请留言,我会更新这个答案 .

    Edit: 您应该通过在 MPMusicPlayerController 的相关实例上设置队列来启动iPod音乐,然后向其发送 -play 消息 . 如果您将 MPMediaItem 对象提供的URL与 AVAudioPlayer 实例或类似物一起使用,则它将以不同方式路由,并且可能无法继续在后台播放 .

相关问题