Dear
I want to ask the functionality of below function API:
knownPeripherals =
[myCentralManager retrievePeripheralsWithIdentifiers:savedIdentifiers
to consider the following case:
if A peer BLE device had been connected and all the services and characteristics had been discovered and read. and saved this peripherals object with the NSobject Identity. and then IOS disconnected with this peer BLE device.
after a few hours or days or minutes, if call retrievePeripheralsWithIdentifiers can retrive the Peripherals object, does it mean that all the services uuid and characteristics attribute are available from the cached as well? just connect to the ble device identified by this peripherals object, no need to find services and characteristics for second time.
Retrieving a List of Known BLE Peripherals
There was a developer video a few years back that described the behavior of attribute caching. I want to say that attributes are cached if your devices is paired/bonded. Also, for things to work right, your peripheral needs to support the services changed service and characteristic.
Attribute caching is a funny business. When ever coworkers ask me about it on iOS / Android I refer them to an article published by Punch Through. Search for "Punch through attribute caching" on the web and it should be one of your first hits. The forums tool said I couldn't post it here directly for some reason.