TimerTask, геолокация и петля - PullRequest
       19

TimerTask, геолокация и петля

1 голос
/ 15 октября 2011

Мне нужно выполнить следующую логику в моем приложении: Каждую минуту я хочу иметь возможность прослушивать местоположение GPS в течение 20 секунд, чтобы получить определение местоположения GEO.

Очевидно, что для этого необходим поток, отличный от потока пользовательского интерфейса.

У меня, однако, есть некоторые проблемы с использованием Looper и Timerask в сочетании ...

Какой лучший способ добиться этого?

1 Ответ

1 голос
/ 02 апреля 2012

Полагаю, вам нужно использовать Сервис :

Android-документ:

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

Таким образом, служба запускает LocationManager , используя requestLocationUpdates () и реализует LocationListener .

Тогда у вас есть (как минимум) два решения (в зависимости от того, что вы хотите сделать):

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