gpt4 book ai didi

ios - 如何检测蓝牙设备的音频来自哪个设备

转载 作者:行者123 更新时间:2023-11-29 05:12:57 25 4
gpt4 key购买 nike

我有两个 BluetoothHFP 蓝牙设备连接到我的 iPad(bluetoothA2DP 和 bluetoothLE),我需要检测当前哪一个正在获取音频。下面是我用来检测哪些蓝牙可用的代码:

let currentRoute = audioSession.currentRoute
for description in currentRoute.outputs {
if convertFromAVAudioSessionPort(description.portType) == convertFromAVAudioSessionPort(AVAudioSession.Port.bluetoothA2DP) {
//Do Something
break
}else if convertFromAVAudioSessionPort(description.portType) == convertFromAVAudioSessionPort(AVAudioSession.Port.bluetoothHFP) {
//Do Something
break
}else if convertFromAVAudioSessionPort(description.portType) == convertFromAVAudioSessionPort(AVAudioSession.Port.bluetoothLE){
//Do Something
break
}
}

我可以使用什么来找出哪一个蓝牙HFP 设备当前正在获取音频?

最佳答案

您可以使用 description.portNamedescription.uid 区分相同类型的端口。请注意,不保证该名称是唯一的(它来自设备)。 UID 是系统分配的,不保证稳定。它仅 promise 与 owningPortUID 属性一致,并且在任何给定时间都是唯一的。

目前(iOS 13)UID是基于硬件MAC地址的,并且是稳定的。其格式为 aa:bb:cc:dd:ee:ff-tacl(MAC 地址后跟 -tacl)。长期以来都是如此。至少从 iOS 8 开始我就一直在使用这个事实,而且只要 AVAudioSession 存在,它就很可能是正确的。但这并没有得到 promise ,而且众所周知,苹果公司会在没有通知的情况下进行更改。

关于ios - 如何检测蓝牙设备的音频来自哪个设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59501241/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com