google maps api геокодирование

Этот вопрос касается геокодирования Google Maps API. Я могу геокодировать адрес и показать местоположение, но это работает, когда адрес действителен.

Когда он недействителен (есть ошибка), прямо сейчас я показываю интеллектуальное сообщение, в котором говорится, что при получении местоположения произошла ошибка, но требуется показать ближайшее возможное местоположение к введенному адресу.

Как мне поставить маркер следующего лучшего места?

вот что я пробовал:

Разделите адрес на основе запятых и геокодируйте каждую подстроку и получите маркер на первом совпадении, но это привело к огромным ошибкам.

Сейчас я собираюсь сделать следующее:

геокодируйте почтовый индекс с помощью API карт yahoo, но единственная проблема в том, что я не думаю, что он будет близок к тому, что пользователь ввел в качестве своего адреса.

Какие-нибудь решения?


person painotpi    schedule 18.05.2011    source источник
comment
+1 Нахождение ближайшего местоположения к локации, которую вы не можете найти, звучит сложно :) Хихикать!   -  person Mattis    schedule 18.05.2011
comment
ха-ха, да, очень забавно, чего ждут клиенты! Хотел бы я отправить им ваш комментарий! :)   -  person painotpi    schedule 18.05.2011


Ответы (2)


Тарун, я не уверен, какой API Google вы используете. Но API геокодирования Google позволяет выполнять частичный поиск адресов и возвращает совпадения, отсортированные по наиболее подходящему. Таким образом, отображение лучшего местоположения должно быть очень простым. Взгляните на эту ссылку ниже. Он возвращает xml, но вы можете запросить json, заменив xml в url на json. Все, что вам нужно сделать, вставить свой частичный адрес в этот URL.

http://maps.googleapis.com/maps/api/geocode/xml?address=holly%20hall&sensor=false

Поэтому, если этот URL-адрес не дает никаких результатов, то, вероятно, можно с уверенностью предположить, что этого адреса не существует. Надеюсь, что hepls

person Shaunak    schedule 18.05.2011
comment
только начал над этим работать! так что, вероятно, пропустил это при быстром чтении документации API, попробую и подтвердю! :) - person painotpi; 18.05.2011
comment
Большое спасибо, когда я пробовал вручную, он работал, просто нужно реализовать это сейчас! - person painotpi; 18.05.2011

Я ни в коем случае не эксперт в Google Maps, но я бы попробовал что-то вроде этого:

1). Получите почтовый индекс 2). Попробуйте найти улицу в этом почтовом индексе

Если найдете, отметьте саму улицу и радуйтесь этому.

person Mattis    schedule 18.05.2011
comment
хорошо, я нахожусь в Индии, и я не уверен, что карты Google уже разработаны (обновлены) для индийских уличных адресов! попробую :) спасибо за подсказку! - person painotpi; 18.05.2011