问题描述
了解蓝牙设备已连接方式的最佳方式是什么?我正在使用 CBCentralManager 来确定蓝牙是否已开启,但我无法确定如何确定蓝牙设备是否已连接。
我正在通过已连接的蓝牙设备实现 AVAudioSession 呼叫的路由,但由于我无法找到蓝牙设备是否已连接,AudioSession Category 更改被重复调用。如果有人尝试实施此行为,您的输入可能会有所帮助。请分享信息。
解决方法
我正在使用 CBPeripheral.state == .connected
检查 BLE 设备的状态。
来自文档:
/**
* @enum CBPeripheralState
*
* @discussion Represents the current connection state of a CBPeripheral.
*
*/
@available(iOS 7.0,*)
public enum CBPeripheralState : Int {
case disconnected = 0
case connecting = 1
case connected = 2
@available(iOS 9.0,*)
case disconnecting = 3
}