Я пытаюсь получить названия стран и городов по широте и долготе, используя API геокодирования Google. Эта библиотека https://github.com/googlemaps/google-maps-services-java в качестве реализации JAVA для API.
Это текущий способ, которым я это делаю:
GeoApiContext context = new GeoApiContext().setApiKey("AI... my key");
GeocodingResult[] results = GeocodingApi.newRequest(context)
.latlng(new LatLng(40.714224, -73.961452)).language("en").resultType(AddressType.COUNTRY, AddressType.ADMINISTRATIVE_AREA_LEVEL_1).await();
logger.info("Results lengh: "+ results.length);
for(int i =0; i< results[0].addressComponents.length; i++) {
logger.info("Address components "+i+": "+results[0].addressComponents[i].shortName);
}
Проблема в следующем: существует 5 уровней AddressType.ADMINISTRATIVE_AREA_LEVEL_1
, а название города находится на разных уровнях в зависимости от конкретного местоположения/страны. Итак, вопрос в том, как я могу извлечь точное название города из результатов? или как мне правильно сформировать запрос?
P.S. это не мобильное приложение.
administrative_area_level_2
должен быть город - person Ankur Singhal   schedule 04.05.2016