Иногда ответ BLE-сканирования не включает kCBAdvDataLocalName

Я разрабатываю приложение iOS, которое работает как центральное устройство BLE.
У меня есть вопрос об ответе на запрос сканирования.

Мое приложение работает на переднем плане и многократно выполняет сканированиеForPeripheralsWithService: options () каждые 3 секунды.

[_centralMgr scanForPeripheralsWithServices:nil options:nil]; 

Почти во всех случаях, когда вызывается didDiscoverPeripheral (), мое приложение может получить localName периферии с ключом @ "kCBAdvDataLocalName".
(Периферийное устройство разработано другим поставщиком)

Ниже представлен вывод NSLog файла didDiscoverPeripheral () с именем localName .

 [MyApp] <Warning>: (-[MyBleCentralMgr centralManager:didDiscoverPeripheral:advertisementData:RSSI:]) [name:DeviceName], [state:0], [identifier:240FF7D3-45D5-C4EE-2E96-BED578225C56] [MyApp] <Warning>: (-[MyBleCentralMgr centralManager:didDiscoverPeripheral:advertisementData:RSSI:]) RSSI=-63, advertisementData={ kCBAdvDataChannel = 39; kCBAdvDataIsConnectable = 1; kCBAdvDataLocalName = "DeviceName"; kCBAdvDataManufacturerData = <[manufactorer data of peripheral device]>; } 

Но иногда (в редких случаях) ответ сканирования не имеет localName .
(Но у него есть другое имя в [peripheral.name])

Ниже приведен NSLog из didDiscoverPeripheral () без localNam e.

 [MyApp] <Warning>: (-[MyBleCentralMgr centralManager:didDiscoverPeripheral:advertisementData:RSSI:]) [name:DeviceName], [state:0], [identifier:240FF7D3-45D5-C4EE-2E96-BED578225C56] [MyApp] <Warning>: (-[MyBleCentralMgr centralManager:didDiscoverPeripheral:advertisementData:RSSI:]) RSSI=-63, advertisementData={ kCBAdvDataChannel = 39; kCBAdvDataIsConnectable = 1; kCBAdvDataManufacturerData = <[manufactorer data of peripheral device]>; } 

Инженер периферийного устройства говорит: «Я всегда включаю localName в ответе на сканирование».

Если у кого-нибудь есть информация о моих вопросах, пожалуйста, дайте мне знать.

  1. Возможно ли это явление? ( LocalName исчезает из ответа на сканирование)
  2. Какая разница между localName advertdata и peripheral.name

Solutions Collecting From Web of "Иногда ответ BLE-сканирования не включает kCBAdvDataLocalName"