gpt4 book ai didi

ios - CBCentralManager 未连接

转载 作者:行者123 更新时间:2023-11-28 12:24:31 24 4
gpt4 key购买 nike

我正在尝试通过附近的蓝牙设备进行连接。我能够发现但无法连接它们。

这个代表正在工作,但在发现我正在尝试连接其中一个外围设备之后

func centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber) {

if let device = (advertisementData as NSDictionary).object(forKey: CBAdvertisementDataLocalNameKey) as? String {
print(device)
if device.contains("BODY") {
self.connectPeripheral = peripheral
self.connectPeripheral.delegate = self
self.manager.connect(connectPeripheral, options: nil)
self.manager.stopScan()
}
}
}

这两个委托(delegate)方法没有调用。其中之一应该被调用。

func centralManager(_ central: CBCentralManager, didConnect peripheral: CBPeripheral) {
peripheral.delegate = self
peripheral.discoverServices(nil)
}



func centralManager(_ central: CBCentralManager, didFailToConnect peripheral: CBPeripheral, error: Error?) {
//NSLog("Error %@", error.debugDescription)
print(error.debugDescription)
}

最佳答案

您需要保持对 CBPeripheral 实例的强引用,因为一旦您告诉 Central 停止扫描,它就会释放所有发现的外围设备。

关于ios - CBCentralManager 未连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43739125/

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