centralManager does not get the changed advertisementData[CBAdvertisementDataLocalNameKey] when the screen is off

I have a BLE device and the centralManger scans with "centralManager.scanForPeripherals(withServices: [connectionServiceUUID], options: nil)"

Then
func centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber) { ... } is called.
Here, I could get the advertisementData[CBAdvertisementDataLocalNameKey].

I have set my BLE device to change its local name key for every connections. The BLE communication is repeated in the background.(scan, connect, stop scan, disconnect, ... etc)

It works well, but when the screen is off, the value of advertisementData[CBAdvertisementDataLocalNameKey] in didDiscover does not change. Why?

centralManager does not get the changed advertisementData[CBAdvertisementDataLocalNameKey] when the screen is off
 
 
Q