Google карты смещения состояния геокодера
У меня есть приложение Google Maps, где пользователи могут осуществлять поиск по стране, штату, городу или адресу улицы. Пользователи могут быть где угодно в мире, и они могут искать где-нибудь еще в мире, а не только в своей стране.
Мне нужно, чтобы геокодер имел смещение таким образом, чтобы при вводе штата (без страны) он геокодировался для штата, а не для города с тем же именем. Наше приложение отдает приоритет странам, затем штатам, затем городам и т. Д., Однако геокодер не делает то же самое.
Например. Я хочу найти "Виктория", которая является государством в Австралии. http://maps.googleapis.com/maps/api/geocode/json?address=victoria показывает Виктория, Британская Колумбия, Канада. http://maps.googleapis.com/maps/api/geocode/json?address=victoria®ion=au показывает штат Виктория в Австралии, однако я не могу указать регион, так как мои пользователи могут быть в любой точке мира, поэтому я не могу зная, какой регион они ищут.
Я рассмотрел "административные уровни", а также "типы", но не могу найти решение, которое бы соответствовало моим потребностям, просто расставив приоритеты в стране заказа> штат> город.
В идеале я хочу что-то вроде этого: maps.googleapis.com/maps/api/geocode/json?address=victoria&components=administrative_area:WILDCARD
ИЛИ ЖЕ
maps.googleapis.com/maps/api/geocode/json?address=victoria&types=administrative_area_level_1
Конечно, ни одно из этих решений не работает, но я надеюсь, что они иллюстрируют то, чего я пытаюсь достичь.
Какие-либо предложения?
Спасибо,
Николь
1 ответ
Вы можете сделать запрос без указания адреса, используйте
...?components=administrative_area:victoria
а затем переберите результаты.адрес_компонентов, чтобы выбрать те, в которых типы включают в себя административный_уровень_уровень_1
Обновление: я заметил, что в зависимости от условия поиска, предоставленного для administrator_area, Google использует эвристические методы для определения достоверности результатов. Если есть явный победитель, то показан только 1 результат. Если для группы локаций совпадение совпадает, вы получите несколько. Поэтому, когда есть несколько результатов, вы можете выбрать более высокий или более низкий административный уровень в соответствии с вашими потребностями.