Получить текущее местоположение (широта, долгота) на карте Android Google при запуске приложения

К сведению: я искал подходящий ответ, но не смог его найти. Большинство из них устарели и используют устаревшие методы.

Мне нужно, чтобы при запуске приложения отображалась карта Google с маркером в текущей позиции. Я могу установить маркер, используя широту и долготу. Но я не смог найти способ получить текущую широту и долготу с помощью GPS.

Не могли бы вы помочь мне получить текущую широту и долготу с помощью GPS?

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


person Shihab    schedule 27.04.2016    source источник
comment
developer.android.com/guide/topics/location/strategies.html   -  person CommonsWare    schedule 27.04.2016


Ответы (3)


Вот мой код, который я использую для получения текущего значения Lat-Lng:

LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
Location location = locationManager.getLastKnownLocation(locationManager.getBestProvider(criteria, false));
double lat = location.getLatitude();
double lng = location.getLongitude();

Надеюсь, что это поможет вам.

person Shihab    schedule 27.04.2016
comment
возвращает ноль для меня - person SadeQ digitALLife; 06.09.2018

Ознакомьтесь с моим ответом на аналогичный вопрос здесь: https://stackoverflow.com/a/52209682/9375838

Используйте это: https://github.com/delight-im/Android-SimpleLocation

Если ваше местоположение включено, вам нужно всего 3 строки кода:

SimpleLocation location = new SimpleLocation(this); //or context instead of this
double latitude = location.getLatitude();
double longitude = location.getLongitude();
person Leena Bhandari    schedule 06.09.2018

Вы можете использовать GPS-трекер, который доступен на github. Функции getLongitude() и getLatitude() вернут текущее местоположение.

person Iraklis Bekiaris    schedule 27.04.2016
comment
НЕ используйте этот класс. Он плохо, плохо сломан. Мы получаем здесь вопросы о том, почему он не всегда возвращает правильные результаты. У меня есть объяснение того, почему он не работает, на gabesechansoftware.com/location-tracking. - person Gabe Sechan; 27.04.2016
comment
Это работает для меня, но я приму во внимание ваш пост. - person Iraklis Bekiaris; 27.04.2016
comment
Это работает в процентах от времени. Но это ошибочный код, который не следует предлагать никому другому. - person Gabe Sechan; 27.04.2016