我正在尝试使用Core Bluetooth框架在我的运行于iOS-13的app中发现Bluetooth LE和Classic(BR/EDR)设备。但是我只能发现BLE设备。
如何扫描Bluetooth Classic设备?
在初始化CBCentralManager并获取CentralManager状态为已开启后,我通过传递Services和Options中的nil来扫描外围设备。
下面是代码:
如何扫描Bluetooth Classic设备?
在初始化CBCentralManager并获取CentralManager状态为已开启后,我通过传递Services和Options中的nil来扫描外围设备。
下面是代码:
private var cbManager: CBCentralManager!
override func viewDidLoad() {
super.viewDidLoad()
cbManager = CBCentralManager(delegate: self, queue: nil)
}
func centralManagerDidUpdateState(_ central: CBCentralManager) {
switch central.state {
case .poweredOn:
cbManager.scanForPeripherals(withServices: nil, options:nil)
default:
os_log("Cleaning up cbManager")
}
}
func centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber) {
if let name = peripheral.name {
print(name)
}
}
我只能获取BLE设备,但期望的结果是:获取BLE和经典(BR/EDR)蓝牙设备列表。