LocationManager лучшая реализация? - PullRequest
2 голосов
/ 24 февраля 2011

Желательно ли реализовать оба LocationManager.NETWORK_PROVIDER и LocationManager.GPS_PROVIDER с другим слушателем, а затем отменить регистрацию слушателей locationManager.removeUpdates (locationListener)?

Поскольку GPS_PROVIDER возвращает много времени, чтобы вернуть значения, а иногда даже не дает обратного вызова?

Также у нас может быть locationManager.getLastKnownLocation (LocationManager.NETWORK_PROVIDER);в обработчике с postDelayed, чтобы избежать тупиков в случае, если нет никаких обратных вызовов?

Любая помощь от кого-либо?

Заранее спасибо !!!

BR, J

Ответы [ 2 ]

1 голос
/ 06 марта 2011

Hm afaik locationManager.getLastKnownLocation возвращается мгновенно, поэтому вы не должны видеть никаких тупиков?

Если вам действительно нужно управлять собственными LocationListeners, рекомендуется сначала зарегистрировать Network-One и два GPS-устройства. Используйте слушатель сети, чтобы получить первое местоположение (грубое). Настройте один GPS-Location-слушатель для получения всех GPS-обновлений. Как только местоположение будет точным, переключитесь на управляемого GPS-Location-Listener, который получает обновления только каждые x секунд и x метров разницы. См. http://developer.android.com/guide/topics/location/obtaining-user-location.html для дополнительных примеров.

Если вы хотите отобразить местоположение на карте, попробуйте MyLocationOverlay. Это все для вас.

0 голосов
/ 29 мая 2013

В идеале этот вопрос больше не будет действительным, так как Google наконец-то выпустил более новую версию слушателей местоположения, которые бы позаботились об этом более эффективно.Ссылка для того же ниже: http://developer.android.com/google/play-services/location.html

...