Менеджер местоположения Android

Есть два провайдера: GPS_PROVIDER и NETWORK_PROVIDER, чтобы получить наше текущее местоположение в Android. Можно ли отключить службу определения местоположения и получить местоположение пользователя исключительно по WIFI? Я пытался отключить службу определения местоположения, но NETWORK_PROVIDER возвращает false.


person veeyikpong    schedule 16.03.2016    source источник


Ответы (2)


Можно ли отключить службу определения местоположения и получить местоположение пользователя исключительно по WIFI?

Да, это возможно, добавив ввод в getLocastKnowsLocation как LocationManager.NETWORK_PROVIDER

LocationManager locMgr = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Location networkLocation = locMgr.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
if (networkLocation != null) {
            Location bestResult = networkLocation;
        }
person Sreehari    schedule 16.03.2016
comment
Что делать, если пользователь отключил службы определения местоположения? В службе определения местоположения есть два варианта: GPS или сеть. Если я отключу службы определения местоположения, оба вернут false. Но я все еще могу подключиться к Интернету с WIFI. Так что в этом случае сетевой провайдер вернет мне ложь, но я все еще использую WIFI. - person veeyikpong; 16.03.2016

Да, вы все еще можете получить текущее местоположение устройства через Wi-Fi. Данные о местоположении, доступные для устройства Android, включают текущее местоположение устройства. Чтобы предоставить вашему пользователю их текущее положение на карте.

Одной из уникальных особенностей мобильных приложений является определение местоположения. API определения местоположения, доступный в службах Google, упрощает добавление информации о местоположении в ваше приложение с автоматическим отслеживанием местоположения, геозоной и распознаванием активности.

Вот пример демонстрационного приложения, в котором обсуждается, как получить текущее местоположение устройства: https://github.com/googlemaps/android-samples/blob/master/ApiDemos/app/src/main/java/com./example/mapdemo/MyLocationDemoActivity.java

person Android Enthusiast    schedule 17.03.2016