Как получить gps-координаты местоположения/адреса, введенные пользователем в android?
Как получить координаты адреса в android
Ответ 1
Geocoder geocoder = new Geocoder(<your context>);
List<Address> addresses;
addresses = geocoder.getFromLocationName(<String address>, 1);
if(addresses.size() > 0) {
double latitude= addresses.get(0).getLatitude();
double longitude= addresses.get(0).getLongitude();
}
Ответ 2
Вы можете использовать Android Geocoder
для обратного геокодирования:
Geocoder geocoder = new Geocoder(this, Locale.getDefault());
List<Address> addresses = geocoder.getFromLocationName(myLocation, 1);
Address address = addresses.get(0);
double longitude = address.getLongitude();
double latitude = address.getLatitude();
Также включите в AndroidManifest.xml
следующее:
<uses-permission android:name="android.permission.INTERNET"/>
Также обратите внимание, что вам нужно использовать API, который включает реализацию Geocoder
. API, которые включают в себя это, например, API Google Google. Вы можете использовать Geocoder.isPresent()
, чтобы проверить, существует ли реализация для вашего целевого API.
Обратитесь к документации Geocoder
для получения дополнительной информации.
Ответ 3
List<Address> addresses;
addresses = geocoder.getFromLocationName(<String address>, 1);
if(addresses.size() > 0){
double latitude= addresses.get(0).getLatitude();
double longitude= addresses.get(0).getLongitude();
}
Разрешения манифеста: -
android.permission.INTERNET
android.permission.ACCESS_COARSE_LOCATION
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_MOCK_LOCATION
Ответ 4
использовать разрешения манифеста, такие как
android.permission.INTERNET
android.permission.ACCESS_COARSE_LOCATION
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_MOCK_LOCATION
и пойдите с этим
Geocoder geocoder = new Geocoder(this, Locale.getDefault());
List<Address> addresses = geocoder.getFromLocationName(myLocation, 1);
Address address = addresses.get(0);
if(addresses.size() > 0) {
double latitude = addresses.get(0).getLatitude();
double longitude = addresses.get(0).getLongitude();
}