CoreBluetooth重新连接时重新订阅特性

时间:2017-12-07 17:24:24

标签: ios core-bluetooth cbcentralmanager cbperipheral state-restoration

在我的应用中,我能够成功连接到BLE外设并订阅特性,以便在特征值发生变化时通知应用。但是,在状态恢复期间重新初始化中央管理器后,应用程序不会通知特征值的更改。以下是我在州恢复期间所做的事情:

  • 在didFinishLaunchingWithOptions中:我重新实例化中央管理器 具有恢复标识符的对象。
  • 然后在centralManager:willRestoreState:方法中,我检索 以前连接的外围设备并使用
    重新连接到它们 CBCentralManagerRestoredStatePeripheralsKey。

只是重新连接到外围设备将在内部进行特性订阅,或者在第一次启动时查找服务并订阅要明确完成的特性吗?

1 个答案:

答案 0 :(得分:0)

如果这是错误的话,我不会感到惊讶,所以一个强大的解决方案是在你的应用程序恢复时订阅通知特征。