在Core Bluetooth中央显示CBService和CBCharacteristic名称的问题

时间:2015-04-09 13:45:36

标签: swift ios8 core-bluetooth cbperipheral

我创建了一个充当CBPeripheral的应用程序。我正在尝试在连接的Central上显示服务和特性的名称,但我无法找到方法。我已经阅读了CBC特性的类引用,它们中没有变量就像名字一样。它们是一些描述符变量,但它们用于以人类可读格式显示特征值。所以我想知道,如何创建一个CBMutable特性,以便它的名字显示在中央设备上。任何人都可以提供帮助。

这是我创建特色

的代码
var characteristic = CBMutableCharacteristic(type: charId, properties: charProperties, value: nil, permissions: CBAttributePermissions.Readable|CBAttributePermissions.Writeable)

1 个答案:

答案 0 :(得分:2)

经过一些研究后,我找到了在描述符的帮助下,我们可以在中心侧显示我们在外围侧创建的CBC特性的名称的方式。目前只支持这两种描述符类型:CBUUIDCharacteristicUserDescriptionString或CBUUIDCharacteristicFormatString。

    var charId:CBUUID = CBUUID("D1FE4DDF-61A7-47F6-81BA-29B223F34322")
    var characteristic = CBMutableCharacteristic(type: charId, properties: charProperties, value: nil, permissions: CBAttributePermissions.Readable|CBAttributePermissions.Writeable)
    let userDescriptionUuid:CBUUID = CBUUID(string:CBUUIDCharacteristicUserDescriptionString)
    var myDescriptor = CBMutableDescriptor(type:userDescriptionUuid, value:"your descriptor name")
    characteristic.descriptors = [myDescriptor]