У меня есть приложение для iPhone, которое получает информацию BLE с определенного устройства. Устройство отправляет данные в мое приложение каждый раз, когда ему есть что сообщить, и скорость передачи составляет около 2 Кбайт в секунду.
Проблема в том, что мое приложение может быть убито в фоновом режиме iOS, и я не могу получить никаких сведений об этом. Если устройство начнет отправлять данные после того, как мое приложение будет уничтожено, мое приложение сможет получить последний пакет данных только после того, как оно будет разбужено системой и потеряло все данные во время процедуры пробуждения.
Как я могу получить все данные BLE после того, как мое приложение разбудило и восстановило система?
PS: я добавил Bluetooth-централ под UIBackgroundModes в Info.plist. В фоновом режиме didUpdateValueForCharacteristic: метод вызывается. Кроме того, CBCentralManagerOptionRestoreIdentifierKey указывается при создании CBCentralManager.