如何配置AVAudioSessionCategoryMultiRoute?

时间:2018-07-12 03:17:20

标签: ios swift avaudiosession

我需要使用Bluetooth外围设备录制声音,并同时使用内置扬声器播放声音。所以我认为我应该  AVAudioSession的类别为AVAudioSessionCategoryMultiRoute和.allowBluetooth选项。我运行下面的代码,但卡住了。

func initAVAudioSession() {
    let session = AVAudioSession.sharedInstance()
    do {
        try session.setCategory(AVAudioSessionCategoryMultiRoute,
        mode: AVAudioSessionModeDefault,
        options: .allowBluetooth)
    } catch {
        print("Failed to set the audio session category and mode: \(error.localizedDescription)")
    }
    do {
        try session.setActive(true)
    } catch {
        print("Error setting up audio session active: \(error.localizedDescription)")
    }
}

输出控制台告诉我:

  

无法设置音频会话的类别和模式:操作无法完成。 (OSStatus错误-50。)

但是如果我只使用不带.allowBluetooth选项的代码,那就很好了:

session.setCategory(AVAudioSessionCategoryMultiRoute)

那是什么问题?

0 个答案:

没有答案