Android Geocoder getFromLocation возвращает 0 результатов для действительных местоположений

#android #google-maps #google-geocoder

#Android #google-карты #google-геокодер

Вопрос:

Приведенный ниже фрагмент кода работает с большинством широтных / длинных координат. Однако передача определенных координат не возвращает результатов.

 Geocoder geocoder = new Geocoder(HappyApp.instance(), Locale.getDefault());
Log.w(TAG, "geocoder object created and is present: "   Geocoder.isPresent());
List<Address> addresses = geocoder.getFromLocation(32.0923805, 35.165159, 1);
Log.w(TAG, "List size: "   addresses.size());
  

Geocoder.isPresent() возвращает true.
Размер списка равен 0.
Местоположение можно подтвердить, набрав Ari’el в картах Google.
То же самое для Газы (только Газа, а не сектор).

Мой вопрос: это проблема с Android API / Google Maps или я делаю что-то не так? Спасибо.

Ответ №1:

Похоже, что Google избегает предоставления страны и других данных, где территория находится под спорным вопросом, например, Северный Кипр и сектор Газа.

Всякий раз, когда мы получаем 0 результатов, мы используем следующий онлайн-сервис: http://www.geonames.org

Комментарии:

1. Это странно, потому что мы пытаемся использовать это в Южной Африке, и я относительно уверен, что у нас нет разногласий

2.@Peter_File double upperRightLat = -22.146708; double lowerLeftLatt = -35.317366; double upperRightLong = 36.188965; double lowerLeftLong = 15.095215;

Ответ №2:

Геокодер Google maps доступен не во всех регионах мира, точка. Если одно и то же приложение будет работать для другого региона, кроме определенного (особенно для Африки и Ближнего Востока), это просто потому, что эта область на самом деле не охвачена геокодером.

🙁

Комментарии:

1. Теперь это так же неверно, потому что он отлично геокодирует адреса. Возможно, метки недоступны в странах третьего мира