提供非空本地名称是否需要 BLE 广告?

问题描述

我正在将一些代码从 MacOS 移植到 Windows。 MacOS 总是在广告包中返回一个非空的本地名称,而 Windows 似乎总是在一个广告包中返回一个空的本地名称

解决方法

不,拥有本地名称并不是发送广告的一部分。 BLE 广告的要求取决于广告类型,但对于最简单和最常见的广告类型(ADV_IND,又名可扫描和可连接广告),唯一的要求是设备的公共地址或随机地址。没有一种广告类型要求将本地名称作为地址的一部分。您可以在蓝牙规范 v5.2,第 6 卷,B 部分,第 2.3.1 节(广告 PDU) [1] 中阅读更多相关信息。

您还可以在 Android/iOS 设备上使用 nRF Connect 进行扫描,您会看到许多设备没有将该名称作为广告的一部分,而是将 N/A 作为设备名称:-

enter image description here