centralManager didConnectPeripheral不能称为Swift BLE

时间:2017-02-04 05:15:27

标签: ios swift macos bluetooth-lowenergy core-bluetooth

我已经使用Segue将我的CBCentralManager和CBPeripheral从另一个View控制器传递到我当前的View控制器。

Class Dashboard: UIViewController ,CBCentralManagerDelegate, CBPeripheralDelegate{


@IBOutlet weak var signalgauge: GaugeView!

var blecentralmanager: CBCentralManager!
var bleperipheral: CBPeripheral!


override func viewDidLoad() {
    super.viewDidLoad()
    }

这些被称为blecentralmanager和bleperipheral。

现在我想做连接和发现服务和特性

所以我致电:

blecentralmanager.connect(self.bleperipheral,options: [CBConnectPeripheralOptionNotifyOnDisconnectionKey: true]) 

这样可以正常工作并连接到设备,但我注意到中央管理器DidConnect没有被调用。

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

如何通过DidConnect外设对我的blecentralmanager或bleperipheral进行响应?

是因为blecentralmanager和_central:CBCentralManger是两个不同的变量?

0 个答案:

没有答案