Android, получение координат в фоновом режиме чаще чем раз в 15 минут
Пишу учебное приложение, которое получает GPS координаты, сохраняет их в Firestore и по запросу выводит трек за определённую дату на гугл карту. При открытом приложении всё работает нормально, я получаю координаты раз в 10 минут, или при изменении местоположения на 10 метров, но необходимо также, чтобы программа могла собирать и сохранять координаты в фоне. Для получения координат в фоне я использую WorkManager, однако он не позволяет получать координаты в фоне чаще, чем раз в 15 минут. Есть возможность обойти это ограничение? или возможно мне нужно использовать другой инструмент? Я читал про AlarmManager, но написано что в новых версиях Андроид система сама будет решать, запускать ей этот Аларм или нет. Спасибо.
Ответы (1 шт):
Нашёл решение: https://developer.android.com/training/location/request-updates?hl=ru В самом низу ссылка: https://github.com/android/location-samples/tree/432d3b72b8c058f220416958b444274ddd186abd/LocationUpdatesPendingIntent По этой ссылке есть куча примеров, конкретно для моей задачи подошёл LocationUpdatesPendingIntent - получаю координаты при помощи FusedLocationProviderClient и затем ловлю их с помощью BroadcastReceiver даже когда приложение не на переднем плане, если приложение закрыто, этот пример работать не будет, но такой задачи и не было.