mirror of
https://codeberg.org/Freeyourgadget/Gadgetbridge
synced 2024-12-25 01:55:50 +01:00
44d50e6246
When using characteristics for communication with a Xiaomi protobuf device, a chunked transaction could be sent out-of-sequence or incomplete, which would result in either a corrupted payload or the characteristic to halt because the device would not receive an acknowledgement. This changeset implements a map to store the received chunk data and sequence number, that allows us to reassemble the payload in sequence after confirming having received all chunks for the transaction. A list of missing chunks is sent to the device if not all chunks have been received and 5 seconds have passed since the last chunk was sent. |
||
---|---|---|
.. | ||
src | ||
build.gradle | ||
lint-baseline.xml | ||
proguard-rules.pro |