Сохраняйте locationListener активным между действиями - PullRequest
1 голос
/ 20 мая 2011

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

Я хотел бы воспользоваться услугой, но хочу быть уверен, что она мне нужна.

1 Ответ

2 голосов
/ 20 мая 2011

Пока служба запущена и на устройстве имеется достаточно ресурсов, она будет работать в фоновом режиме.Переключение действий, сворачивание или закрытие приложения не меняет этого.Вы должны официально остановить службу.

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

Вы можете проверить работающие службы на устройстве Android (Настройки - Приложения - Запущенные службы). Вы должны увидеть свою службу и время ее работы.

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

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