Блокировка экрана, когда приложение находится на переднем плане, предотвращает фоновое выполнение (Android) - PullRequest
0 голосов
/ 14 декабря 2018

У меня есть приложение, которое сбрасывает соединение BLE в фоновом режиме через 10 минут.

Все работает нормально, когда приложение подключено к Debbuger, если устройство заблокировано, когда приложение находится на переднем плане, соединение будет разорвано через 10 минут, но если мы отключим его и заблокируем устройство, пока приложение находится на переднем плане, соединение не прерывается после истечения времени ожидания.

Существуют ли какие-либо ограничения на фоновое выполнение, когда устройство заблокировано?Почему это работает при подключении к Debbuger?

1 Ответ

0 голосов
/ 14 декабря 2018

Используйте Сервис в Foreground для создания сильной связи, это лучший вариант.Но даже сервис Foreground не помогает, если включен режим экономии заряда аккумулятора или другие режимы оптимизации заряда аккумулятора.Да, отладчик предотвращает уничтожение приложения системой, фактически не отладчиком, а ADB-соединением.Иногда тестируйте ваше приложение без USB-подключения.Также используйте PowerManager.WakeLock в сервисе, это помогает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...