如何从AVAudioSessionCategory中删除AVAudioSessionCategoryOptions?

时间:2016-09-05 09:38:13

标签: ios swift audio avaudiosession

我将AVAudioSessionCategory这样设置为选项:

try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, with: AVAudioSessionCategoryOptions.mixWithOthers)
try AVAudioSession.sharedInstance().setActive(true) 

稍后在我的代码中我想从AVAudioSessionCategoryOptions.mixWithOthers删除AVAudioSessionCategory

根据文档,这应该可以解决问题:

try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)

但是它在iOS 9和iOS 10中不起作用。它不会抛出任何错误,但不会删除该选项。我已将此报告为Apple的错误。

只要不修复:有没有其他方法可以达到我的目的?

请注意:使用AVAudioSessionCategory只能在真实设备上进行测试。

1 个答案:

答案 0 :(得分:2)

可以这样做:

try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, with: AVAudioSessionCategoryOptions(rawValue: 0))

虽然应用程序处于后台,但它不起作用。