如何传递额外的广告 BLE 数据?
Posted
技术标签:
【中文标题】如何传递额外的广告 BLE 数据?【英文标题】:How to pass additional advertising BLE data? 【发布时间】:2015-08-21 07:14:47 【问题描述】:目前我在 OSX 上使用以下代码来定义广告数据:
[peripheral startAdvertising:@
CBAdvertisementDataLocalNameKey: @"hello",
// CBAdvertisementDataManufacturerDataKey: manufacturerDataKey,
CBAdvertisementDataServiceUUIDsKey: @[[CBUUID UUIDWithString:@"00001234-0000-1000-8000-00805f9b34fb"]]
];
但我应该在这里添加更多Generic Access Profile (GAP) 数据。我应该在这里添加:
0x02 «16 位服务类 UUID 的不完整列表» 0x08 «缩短的本地名称» 0x16 «服务数据» 0x19 «外观»如何添加这些数据?
【问题讨论】:
【参考方案1】:仅 CBAdvertisementDataLocalNameKey 和 支持 CBAdvertisementDataServiceUUIDsKey。
来自CBPeripheralManager Class Reference
广告数据
包含您要宣传的数据的可选字典。这 广告数据字典的可能键在 CBCentralManagerDelegate 协议参考。也就是说,只有两个 外围管理器对象支持键: CBAdvertisementDataLocalNameKey 和 CBAdvertisementDataServiceUUIDsKey。
【讨论】:
谢谢。我无法理解这样的限制 - 设备可以传递更多字段,但使用 Objective-C 时我不能。有没有办法以某种方式覆盖 CBPeripheralManager 所做的并添加这些数据? 您可以向 Apple 提出问题。以上是关于如何传递额外的广告 BLE 数据?的主要内容,如果未能解决你的问题,请参考以下文章