Google Geocoding перестал работать на Крым, Украина

Я обнаружил очень странную проблему. Геокодирование API внезапно прекратило работать по координатам Крыма. Пример: город Симферополь:

http://maps.googleapis.com/maps/api/geocode/json?language=en&latlng=44.957844%2C34.104996&sensor=false

но это работает для любого другого места в Украине и России. Пример: Киев, Украина

http://maps.googleapis.com/maps/api/geocode/json?language=en&latlng=50.463405%2C30.481567&sensor=false

в последнее время API работал правильно. Скажите, пожалуйста, это ограничение Google из-за политических событий в Украине? Должна ли служба работать снова и когда? Наше приложение критически зависит от геокодированного местоположения пользователя, и эта проблема блокирует рабочий процесс.

Спасибо большое!

2 ответов


Да, это ограничение из-за политических событий. Я получил этот ответ от поддержки Гугла:

поскольку Крым в настоящее время является спорной территорией (http://en.wikipedia.org/wiki/List_of_territorial_disputes), результаты геокодера в настоящее время не будут возвращать результаты для обратного геокодирования.


сервис геокодирования Google (reverse) прекратил работу в Крыму из-за территориального спора.

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

таким образом, вы уменьшаете зависимость от конкретной службы. Например, можно воспользоваться сервисом геокодирования Яндекса, если координаты находятся в пределах ограничивающего прямоугольника Крыма:
http://geocode-maps.yandex.ru/1.x/?geocode=34.104996,44.957844&lang=en-US

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


обратите внимание, что поддержка определенных регионов или стран программным продуктом может быть предметом санкций США / ЕС. поддержка любого региона с территориальным спором является потенциальным проблема.