Xamarin.Forms: BLE + background service
Есть медицинское устройство, которое подключается по bluetooth LE к приложению на смартфоне (Xamarin.Forms - Android, iOS). Необходимо поддерживать постоянное соединение с устройством 24/7. Сейчас использую Plugin.BLE и ForegroundService. Однако соединение с устройством всё равно рвется через некоторое время (от нескольких минут до часов).
Каков правильный путь решения данной задачи? Постоянное соединение с устройством критично.
Ответы (1 шт):
flutter_foreground_task
- Может выполнять повторяющиеся задачи со службой переднего плана.
- Предоставляет полезные утилиты (minimizeApp, wakeUpScreen и т.д.), которые можно использовать при выполнении задачи.
- Предоставляет виджет, который предотвращает закрытие приложения во время работы службы переднего плана.
- Предоставляет виджет для запуска службы переднего плана, когда приложение свернуто или закрыто.
- Предоставляет возможность автоматического возобновления службы переднего плана при загрузке.
Этот плагин для задач
переднего плана. Для Android вы можете использовать опциюIgnoe_Battery_optimisation, и приложение будет продолжать работать в фоновом режиме, пока вы не проведете пальцем вверх по приложению, и если вы хотите, чтобыble Connectionотключился от устройства в приложенииswipUpиз памяти, вам нужно добавить несколько дополнительных шагов, и он также работает дляIOS, просто добавьтеUiBackgroundModesдляBluetoothи всего остального, и приложение будет продолжать работать в фоновом режиме, если вы постоянно что-то делаете с Bluetooth @rohitsangwan01
Если я правильно понял - плагин дает возможность перевести ЛЮБОЕ приложение на передний план и заставить его работать пока его не смахнут, или не выключат иначе.
Вряд ли это можно считать решением задачи, но за не имением других ответов решил поделиться, мне кажется это может сработать.
