Я хочу получить широту и долготу, используя zipcode для приложения для Android.
Получить широту и долготу с помощью zipcode
Ответ 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. Обратите внимание: поскольку вы будете просто предоставлять почтовый индекс, вы можете не получить нужные результаты из-за неточности самого адреса.