BLE外围设备无法正确显示

我目前在连接到外围设备时遇到一些问题。外围设备中的蓝牙模块最初似乎并没有在宣传广告。我发现,第一次连接外围设备时,它将更新名称,然后我的扫描仪就能看到正确的名称。

我不知道为什么会这样。我也使用我们正在开发的Swift应用程序以及iOS和Android上的一系列蓝牙扫描仪进行了尝试,因此我不认为这是扫描仪方面的操作系统或编程错误。

是否有应在外围设备上设置的特定参数。因为我只是应用程序开发人员,所以我对模块如何处理流程没有太多了解。

任何帮助将不胜感激。

仅确认扫描仪在连接一次后才能看到外围设备的名称。之后,它将开始显示名称。更改外围设备名称后,仍然会显示旧名称,直到我再次连接它为止。

lzr5210 回答:BLE外围设备无法正确显示

要显示您需要在 advertisementData 字典中查看的设备名称,该字典包含几个取决于您的设备的键,在 CentralManager 的 didDiscoverPeripheral 回调中。

- (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary<NSString *,id> *)advertisementData RSSI:(NSNumber *)RSSI

您可以查找密钥 CBAdvertisementDataLocalNameKey

如果您没有看到该名称,您可以在固件中进行更改以在 GATT 特性中包含一个名称。

您可以使用 LightBlue 应用程序验证一次。这是应用商店上的一款不错的应用,可用于测试您的 BLE 设备。

本文链接:https://www.f2er.com/3165519.html

大家都在问