我正在Swift中为iOS开发语音通话应用程序,我需要启用无线(蓝牙(耳机/耳机的自动检测和自动连接。
我正在使用AVAudioSession RouteChangeReason,但它无法检测airpods或其他无线耳机何时通过蓝牙连接。连接设备后,我甚至可以在蓝牙设置中看到它已连接,但该设备没有在MPVolumeView中列出,正如您在屏幕拍摄中看到的那样。
我一直在寻找如何在互联网上解决这个问题的答案,尽管StackOverFlow上有很多类似的问题,但没有一个与我的案例具体相关,所以请告诉我如何解决这个问题。
我刚读了代码,终于发现了问题所在。问题是我不止一次设置类别,所以出于某种原因,这导致无线耳机/耳机无法直接连接到应用程序。
.allowBluetoothA2DP
对playAndRecord
无效。你不能用A2DP录音。拆下那个。请注意,当你这样做时,如果用户正在听音乐,质量会急剧下降(AirPods可能有专门的解决方案;我还没有在这种模式下玩过它们(。为了通过蓝牙进行录制,您必须使用HFP,它基本上提供";电话";高品质音频。