#flutter #timer #geolocation
#flutter #таймер #геолокация
Вопрос:
В моем приложении есть экран, который отслеживает местоположение ( geolocator
) и время с помощью ( timer_builder
), когда пользователь нажимает кнопку «Пуск». Когда экран блокируется / спит, он прекращает (или приостанавливает) отслеживание местоположения, но он должен приостанавливаться только тогда, когда пользователь нажимает кнопку остановки. Кто-нибудь может мне помочь в этом?
Я считаю, что есть разница между запуском приложения on background
и on lock screen
запуском приложения, потому что я только что нашел темы о запуске приложения в фоновом режиме с помощью android_alarm_manager / background_fetch (в этом случае пробуждение приложения в фоновом режиме примерно каждые 15 минут тоже не сработает). Одним из решений было бы предотвратить переход экрана в режим сна / блокировки, но тогда проблема с батареей. Любые другие решения?
Заранее спасибо!
Ответ №1:
Я думаю, что фоновая геолокация — сложная проблема. Однако есть проект flutter_background_geolocation. Он работает в режиме отладки. К сожалению, в режиме выпуска вам необходимо приобрести лицензию.
Комментарии:
1. но экран блокировки считается фоновым? Похоже
flutter_background_geolocation
, это сложнее того, что мне нужно (и я пытаюсь избежать этой лицензии на 300 долларов, ха-ха, на моей валюте это слишком много)
Ответ №2:
Вы можете создавать фоновые задачи с помощью Flutter, см. Эту статью. Никогда не пробовал.