Держите приложение работающим, даже когда телефон заблокирован / находится в спящем режиме - Ionic4 - PullRequest
1 голос
/ 04 февраля 2020

Приложение представляет собой конденсаторное приложение ionic4, которое также использует несколько плагинов Cordova. У меня есть функция таймера, связанная с устройством Bluetooth, которое должно работать, даже когда телефон переходит в спящий режим или в заблокированном режиме. С помощью плагина cordova-background-mode приложение работает в фоновом режиме, но как только телефон заблокирован или находится в спящем режиме, таймер перестает работать. Когда экран возобновляется, таймер продолжает работать с того места, где он остановился.

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

Это приложение используется с таблицей регулировки высоты, где пользователь может использовать приложение для регулировки высоты, а также отслеживать время, когда он находится в положении стоя. (Таймер начинает работать, когда стол достигает определенной высоты). Стол регулировки высоты также имеет кнопку для управления его высотой.

Вариант использования (Почему я не могу использовать события возобновления и приостановки платформы вместе с метками времени):

  1. Стол находится в положении стоя , Таймер начинает работать.
  2. Я блокирую свой телефон (временная метка создана)
  3. I go в сидячем положении в течение 1 часа (В таблице также есть кнопки для управления высотой, так что это упоминается, когда пользователь использует это для уменьшения высоты и находится в сидячем положении, но телефон все еще заблокирован / находится в спящем режиме)
  4. I go возвращается в положение стоя на 20 минут
  5. Я разблокирую свой телефон. (Создана вторая отметка времени)
  6. Теперь будет отображаться время ожидания 1: 20 минут, хотя я стоял только 20 минут

Как еще можно настроить таймер приложения, даже если телефон работает? заблокирован? Или я должен использовать плагин insomnia cordova, чтобы он не спал, когда таймер работает? Что происходит, когда пользователь вручную блокирует телефон даже с плагином бессонницы? Будет ли он бодрствовать?

1 Ответ

0 голосов
/ 12 февраля 2020

Я получил его, используя метод пробуждения из плагина фонового режима cordova внутри метода startNotification. Предложение @ Paulw11 помогло!

...