Подтвердить что ты не робот

Получить широту и долготу с помощью zipcode

Я хочу получить широту и долготу, используя zipcode для приложения для Android.

4b9b3361

Ответ 1

Это гораздо более простое решение, предполагающее наличие служб геокодирования:

final Geocoder geocoder = new Geocoder(this);
final String zip = "90210";
try {
  List<Address> addresses = geocoder.getFromLocationName(zipCode, 1);
  if (addresses != null && !addresses.isEmpty()) {
    Address address = addresses.get(0);
    // Use the address as needed
    String message = String.format("Latitude: %f, Longitude: %f", 
    address.getLatitude(), address.getLongitude());
    Toast.makeText(this, message, Toast.LENGTH_LONG).show();
  } else {
    // Display appropriate message when Geocoder services are not available
    Toast.makeToast(this, "Unable to geocode zipcode", Toast.LENGTH_LONG).show(); 
  }
} catch (IOException e) {
  // handle exception
}

Ответ 2

В GeoCoding нет конкурента Google:)

Вам нужно просто сделать запрос HTTP Get для следующей ссылки. Здесь ссылка

Просто изменить элемент почтового кода. В соответствии с вашими требованиями. И наслаждайтесь.

Для получения дополнительной информации перейдите по ссылке. Справочник по геокодированию карт

Ответ 3

Вы можете использовать YQL так: выберите centroid из geo.places, где text = "ZIPCODE_HERE"

Ответ 4

Вам понадобится Служба геокодирования, например, Google или свободно доступный Nominatim. Обратите внимание: поскольку вы будете просто предоставлять почтовый индекс, вы можете не получить нужные результаты из-за неточности самого адреса.