【问题标题】:Multiple CBPeripheral's for same device同一设备的多个 CBPeripheral
【发布时间】:2012-05-31 15:33:51
【问题描述】:

当使用 CoreBluetooth 框架访问蓝牙低功耗设备时,CBCentralManager 为外围设备返回一个 CBPeripheral

外围设备上有多个服务可用,我想将处理不同服务的特征值更新的代码拆分为多个类。因此,我需要将多个 id<CBPeripheralDelegate> 代表附加到外围设备。但是,这是不可能的,因为只支持一个委托。

  • 有没有办法为同一个外围设备获取多个CBPeripheral 实例?

    如果有可能多个应用程序访问同一个外围设备,它们会收到不同的CBPeripheral 实例吗?如果是,他们是否看到来自其他应用程序的更新? (比如说,应用 A 向一个特征写入一个值,应用 B 的委托是否也收到了 [– peripheral:didWriteValueForCharacteristic:error:] 消息?)

  • 是否有任何优雅的方法可以支持将事件处理代码拆分为多个类?

【问题讨论】:

    标签: ios events core-bluetooth bluetooth-lowenergy


    【解决方案1】:

    CoreBluetooth: How to design code for many characteristics (30 - 40)?answer 有一些设计技巧,在这里可能会有所帮助。简而言之,创建一个可以是CBPeripheralDelegate 的中介类,并支持多个特征类注册他们想要的任何特征。

    【讨论】:

      猜你喜欢
      • 2017-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-18
      • 1970-01-01
      • 1970-01-01
      • 2019-05-19
      • 1970-01-01
      相关资源
      最近更新 更多