Я ищу несколько советов по дизайну приложений.Как получать и обрабатывать изменения местоположения при приостановке действия
У меня есть приложение, которое подключается к службам геолокации Google и отслеживает координаты местоположения, которые он получает. Они отображаются в качестве пути в пользовательском интерфейсе.
Когда экран выходит из строя и гаснет, тогда этот Activity
будет, конечно, закрыт в соответствии с обычным жизненным циклом деятельности.
Тем не менее - я хочу записать координаты, возвращающиеся в каждое событие onLocationChanged
из служб местоположения, но, конечно же, Activity
остановился, поэтому он не может этого сделать.
Я не особо хочу, чтобы экран не гаснул в манифесте (и, следовательно, Activity
никогда не останавливался). Хотя я считаю, что все равно остановится, если, скажем, телефонный звонок получен и т.д.
Мой решение было бы начать IntentService
в одном из Activity
приостанавливают событий (либо , onStop
или onSaveInstanceState
) получить Расположение обновления, а затем, когда перезагрузится Activity
, соберите данные из Сервиса и закройте Службу вниз.
Будет ли это эффективным и правильным способом достижения этого, или есть некоторые черное искусство Android, о котором я не знаю? Если да, то есть IntentService
правильный способ обойти это (или использовать Service
)?
Не могли бы вы объяснить, почему это лучше? Разве это не просто «сервис», который запускается планировщиком, а не когда он действительно нужен (т. Е. Когда мое приложение приостанавливается)? – SimonH