Android: Google Maps Places API

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

Пока что я делаю что-то вроде:

Geocoder geocoder = new Geocoder(this);
List<Address> list = geocoder.getFromLocationName("New York", 10);

Он возвращает местоположение, но когда я это делаю:

Geocoder geocoder = new Geocoder(this);
List<Address> list = geocoder.getFromLocationName("Hospital", 10);

Я ничего не получаю. Как я могу получить такие запросы?

Очевидно, что Hospital не является названием местоположения, поскольку вы не используете API Адресов; ваш вопрос читается 8 раз Geocoder.

Martin Zeitler 26.10.2018 02:05
0
1
23
1

Ответы 1

Как говорится в документации:

getFromLocationName

public List<Address> getFromLocationName (String locationName, 
                int maxResults)

Возвращает массив адресов, которые, как известно, описывают указанное местоположение, которое может быть названием места, например «Далвик, Исландия», адресом, например «1600 Amphitheatre Parkway, Mountain View, CA», или кодом аэропорта, например SFO. "и т. д. Возвращенные адреса будут локализованы для локали, предоставленной конструктору этого класса.

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

Таким образом, вы не можете искать, запутав местоположение. Больница - это не название места, поэтому результатов нет.

попробуйте использовать Google Place API, может это поможет

Другие вопросы по теме