We are developing an app that talks to a BLE peripheral. The BLE peripheral as well it's firmware is in-house.
We have diferent versions of the firmware, some with a custom CBAdvDataManufacturerData and others without it.
When we update from the firmware issued by the custom manufacturated to the firmware version that does not issue it, we can see that in the advertisementData.CBAdvDataManufacturerData the previous one continues to arrive. In this case, it should come empty. And we have verified that it is a storage that IOS does. How can we clean that CBAdvDataManufacturerData?
(void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI
Should move this to the Bluetooth section, you will find the most competent developers for this.
Maybe the "Database Hash" and "Service Changed" characteristics can prevent this data from being cached by the OS