Android: какими способами я могу получить текущее местоположение программно

#android #geolocation

#Android #геолокация

Вопрос:

Сколькими способами я могу программно получить текущее географическое местоположение (широта, lang) в Android, какой способ является лучшим, точным и быстрым??

С нетерпением ждем ваших предложений

Спасибо

Комментарии:

1. Хорошая публикация, с которой я столкнулся android10.org/index.php/articleslocationmaps /…

Ответ №1:

Вам следует прочитать, как получить местоположение пользователя, в документации SDK.

Комментарии:

1. Не уверен, что есть лучший способ: GPS может быть медленным, но довольно точным; ячейка не точная, но быстрее; не на всех устройствах есть GPS;;; использование комбинации нескольких способов, вероятно, лучший способ (сначала celle-tower, чтобы быстро определить местоположение; затем GPS, чтобы оно стало более точным)

2. Спасибо Pascal, любой пример кода доступен для справки (с использованием как сетевого провайдера, так и GPS)

3. Нет, извините; в руководстве, я полагаю, есть примеры, но я никогда ими не пользовался.

4. Хорошая публикация, с которой я столкнулся android10.org/index.php/articleslocationmaps /…

Ответ №2:

Можно узнать местоположение по IP-адресу:

http://www.google.com.sg/search?aq=1amp;oq=identifying locationamp;sourceid=chromeamp;ie=UTF-8amp;q=identifying location of ip addresses

Другой метод — с помощью GSM или определения местоположения в плоскости управления, но другие методы можно найти здесь:

http://en.wikipedia.org/wiki/Location-based_service#Others

Ответ №3:

При разработке приложения с учетом местоположения для Android вы можете использовать GPS и поставщика сетевых данных Android для определения местоположения пользователя. Хотя GPS является наиболее точным, он работает только на открытом воздухе, быстро расходует заряд батареи и не возвращает местоположение так быстро, как этого хотят пользователи. Поставщик сетевого местоположения Android определяет местоположение пользователя с помощью вышки сотовой связи и сигналов Wi-Fi, предоставляя информацию о местоположении таким образом, который работает в помещении и на улице, быстрее реагирует и потребляет меньше заряда батареи. Чтобы получить местоположение пользователя в вашем приложении, вы можете использовать как GPS, так и поставщика сетевого местоположения, или только одного`

 locationManager.requestLocationUpdates(
                                LocationManager.GPS_PROVIDER,
                                MIN_TIME_BW_UPDATES,
                                MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
                        Log.d("GPS Enabled", "GPS Enabled");
                        if (locationManager != null) {
                            loc = locationManager
                                    .getLastKnownLocation(LocationManager.GPS_PROVIDER);
                          }
locationManager.requestLocationUpdates(
                            LocationManager.NETWORK_PROVIDER,
                            MIN_TIME_BW_UPDATES,
                            MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
                    Log.d("Network", "Network");
                    if (locationManager != null) {
                        loc = locationManager
                                .getLastKnownLocation(LocationManager.NETWORK_PROVIDER);

                    }