-
Notifications
You must be signed in to change notification settings - Fork 516
Device Bonding
Dariusz Seweryn edited this page Feb 2, 2018
·
1 revision
This library does not provide possibility to explicitly create a bond
with a peripheral.
There is a possibility that a bond will be automatically created by the OS. This usually happens when a read/write request is sent to a characteristic that needs encryption.
The usual process on a low level looks like this:
- Central sends a read/write characteristic request to a peripheral
- Peripheral responds with
GATT_INSUF_AUTHENTICATION
/GATT_INSUF_AUTHORIZATION
- Central—OS intercepts the response and kicks off bonding procedure
After the bond is created the iOS
automatically retries the request that was responded with the GATT_INSUF_AUTH*
whereas Android
returns an error and a manual retry should be performed.
- On some Android versions there is a bug where the bonding is randomly lost