[iOS] AVAudioSession 출력시 블루투스 출력 안 될 때

오준석·2020년 6월 27일
0

코딩삽질방지

목록 보기
1/53

현상

AVAudioSession을 통해서 소리 출력시 번들 이어폰은 출력이 잘 되나 블루투스 이어폰에서 소리출력이 안 되는 현상

기존 코드

let audioSession = AVAudioSession.sharedInstance()
do {
    try audioSession.setCategory(.playAndRecord, mode: .default)
    try audioSession.setActive(true, options: .notifyOthersOnDeactivation)
    try audioSession.overrideOutputAudioPort(.none)
} catch {
    print(error)
}

수정 코드

options에 블루투스 허용

try audioSession.setCategory(.playAndRecord, mode: .default, options: .allowBluetoothA2DP)

참고로 .allowBluetooth 도 있으나 에어팟의 경우 타입이 A2DP라고 하여 이쪽 옵션을 선택했고 일반 블루투스 이어폰에서 소리가 잘 출력되는 것 확인하였음

profile
교육하고 책 쓰는 개발자

0개의 댓글