2014-02-06 2 views
2

Я хочу получить адреса из нескольких широт/долготы, есть ли способ сделать это в одном запросе?получить несколько адресов из нескольких широт/долготы

я могу получить адрес из одного места, используя этот код:

try { 
Geocoder geocoder; 
List<Address> addresses; 
geocoder = new Geocoder(MainActivity.this, Locale.getDefault()); 
addresses = geocoder.getFromLocation(Double.parseDouble(latitude), Double.parseDouble(longitude), 1); 
String address = addresses.get(0).getAddressLine(0); 
Log.i("adresse :", address); 
} catch (IOException e) { 
    Log.e("tag", e.getMessage()); 
    } 

любая помощь, пожалуйста.

ответ

1

Сделайте способ, передайте ему свой список координат LatLngs и пропустите код, который у вас уже есть.

+0

Мой вопрос: я хочу использовать сервис google (getlocationfrom) один раз, чтобы получить данные для нескольких координат, есть ли способ отправить список координат и получить результаты за один раз – Abdel

1

Короткий ответ заключается в том, что API не поддерживает несколько местоположений для каждого запроса.

Долгий ответ заключается в том, что Google разработал API-интерфейс геокодирования, чтобы клиенты не исчерпали ограничение на запрос, если вы выполняете геокодирование на стороне клиента. См following quote from this FAQ:

Когда использовать Клиентский Геокодировать

Основной ответ является «почти всегда». Поскольку ограничения на геокодирование на сеанс пользователя , вы не рискуете, что ваше приложение достигнет глобального предела по мере роста вашей пользовательской базы. Геокодирование на стороне клиента не будет иметь ограничение квоты , если вы не выполните партию запросов геокодирования в пользовательском сеансе . Поэтому при запуске геокодирования на стороне клиента вы, как правило, , не должны беспокоиться о своей квоте.

Существуют две основные архитектуры для клиентского геокодирования.

Запуск геокодирования и отображение полностью в браузере. Например, пользователь вводит адрес на вашей странице. Ваше приложение геокодирует его. Затем ваша страница использует геокод для создания маркера на карте. Или ваше приложение делает простой анализ с использованием геокода. На ваш сервер не отправляются данные . Это уменьшает нагрузку на ваш сервер, но не дает вам любого смысла в том, что делают ваши пользователи.

Запустите геокод в браузере и отправьте его на сервер. Для экземпляра пользователь вводит адрес. Ваше приложение геокодирует его в в браузере. Затем приложение отправляет данные на ваш сервер. Сервер отвечает некоторыми данными, например, рядом с достопримечательностями. Это позволяет настроить ответ на основе ваших собственных данных, а также до кешировать геокод, если хотите. Этот кеш позволяет оптимизировать даже . Вы даже можете запросить сервер с адресом, посмотрите, есть ли у вас недавно зашифрованный геокод, и если вы это сделаете, используйте это. Если вы не используете , не возвращайте результат в браузер и дайте ему геокодировать результат и отправить его обратно на сервер для кэширования.

Подробнее об ограничениях на запросы геокодирования, see this URL.

+0

, пожалуйста, каково решение , потому что у меня много координат, как я могу быстро получить адреса – Abdel