iOS蓝牙CBC特性UUID已弃用?

时间:2014-10-02 20:52:27

标签: ios bluetooth

在最新的Apple文档中,CBC特性的UUID属性有一条线,并且表示它仅在5.0到7.1中可用。但是,你通常希望看到的“#34;弃用"”这个词无处可见。

更重要的是,没有任何关于我们如何识别特征的建议,例如:当我们在委托方法中传递一个外围设备:didUpdateValueForCharacteristic:。在该方法中,决定我正在处理哪个特征至关重要。 CBC特征实例的描述符成员是nil。那里还有什么? Apple如何打算让我们区分特征? UUID的重点是识别......

2 个答案:

答案 0 :(得分:18)

查看CBC特征的标题可以看出这一点。类中没有更多的UUID属性,但CBCharacteristic现在是CBAttribute的子类, 具有UUID属性。此(新)父类被标记为从iOS 8开始可用。

这可以解释为什么UUID成员有删除线,但没有“弃用”警告:您仍然可以获取UUID,但它是继承的,而不是直接属于CBAttribute。

答案 1 :(得分:10)

安德鲁是真的,UUID现在已经在IOS8中成为继承属性 以下是Apple的文件中的证据 CoreBluetooth Changes in IOS8 API diffs

CBAttribute.h(已添加)

添加了CBAttribute
添加了CBAttribute.UUID

CBCharacteristic.h

删除了CBCharacteristic.UUID
修改后的CBC特征 超:
来自NSObject 致CBAttribute


许多其他基本的CoreBluetooth类(包含UUID)采用此更改

然而,CBCharacteristic的类引用仍然表示它继承自NSObject。

因此它是错误的,开发人员可以轻松地将UUID理解为IOS8中已弃用的属性