无法在 iPad + Swift 上使用蓝牙扬声器录音 3

Cannot record using Bluetooth speaker on iPad + Swift 3

我想用连接到 iPad 的蓝牙音箱录音。 但是,当使用AVAudioRecorder时,它变成了内置扬声器。

let session = AVAudioSession.sharedInstance()
try! session.setCategory(AVAudioSessionCategoryPlayAndRecord)
try! session.setActive(true)
       
let recordSetting: [String: Any] = [AVSampleRateKey: NSNumber(value: 16000),
            AVFormatIDKey: NSNumber(value: kAudioFormatLinearPCM),
            AVLinearPCMBitDepthKey: NSNumber(value: 16),
            AVNumberOfChannelsKey: NSNumber(value: 1),
            AVEncoderAudioQualityKey: NSNumber(value: AVAudioQuality.max.rawValue)
        ];
        
do {
    self.audioRecorder = try AVAudioRecorder(url: url as URL, settings: recordSetting)
   } catch {
    fatalError(“error”)
   }

好的,我解决了这个问题。 如果您想使用蓝牙扬声器或麦克风进行 AVAudioRecording,请在 "setCategory" 方法中设置选项,如下所示。

try! session.setCategory(AVAudioSessionCategoryPlayAndRecord,
        mode:AVAudioSessionModeDefault,
        options:AVAudioSessionCategoryOptions.allowBluetoothA2DP)

谢谢。