我正在尝试创建一个背景播放的音乐应用程序,所以我在我的委托didFinishLaunchingWithOptions中定义了AVAudioSession类别AVAudioSessionCategoryPlayback .

因为我希望音乐在后台不被其他音频中断,所以我确实将AVAudioSessionCategoryOptionMixWithOthers设置为会话的选项,所以我的代码是:

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback withOptions:AVAudioSessionCategoryOptionMixWithOthers error:nil];
[[AVAudioSession sharedInstance] setActive:YES error:nil];

这完全适用于我的设备(带有iOS 8.3的iPad 2),所有模拟器等等 . 但是当我在带有iOS 7.1.2的iPhone 4S上播放时,它根本不会播放音频 . 当我播放其他音频时,并不是它会中断 - 它根本就不会播放 .

如果我删除MixWithOthers的东西,音频效果很好 - 但我需要它混合或鸭子,并且闪避也不起作用 . 我已经尝试过首先停用AVAudioSession,但这也不起作用 .

你们有没有遇到过这个问题?我尝试过任何我能想象的东西,但没有任何效果 .