Как получить адреса, если мы указываем широту и долготу с помощью API определения местоположения в Android - PullRequest
1 голос
/ 06 сентября 2010

У меня есть приложение, в котором я пытаюсь получить адрес местоположения на основе координат широты и долготы. Когда я пытаюсь распечатать все адреса определенных координат, я получаю только один адрес.Есть ли способ получить список всех адресов для предоставленных координат.Мой фрагмент кода выглядит следующим образом:

Где locationLatitude, locationLongitude имеют тип String, которые преобразуются в двойные.Адрес - это класс, который имеет методы получения и установки для получения сведений о штате, городе, стране и т. Д.

List<Address> addresses = geoCoder.getFromLocation(Double.parseDouble(locationLatitude),
Double.parseDouble(locationLongitude), 1);
StringBuffer  addressAsString  = new StringBuffer("");
if(!addresses.isEmpty()){
    for (int i = 0; i < addresses.get(0).getMaxAddressLineIndex(); i++)
        addressAsString.append(addresses.get(0).getAddressLine(i) + "\n");
    return addressAsString.toString();
}

1 Ответ

0 голосов
/ 06 сентября 2010

Переберите все ваши адреса и измените третий параметр getFromLocation на 10 вместо 1, чтобы получить все 10 окружающих местоположений в данной географической точке:

List addresses = geoCoder.getFromLocation(Double .parseDouble(locationLatitude), Double.parseDouble(locationLongitude), 10); 

for (Address addr:List addresses) {

  for (int i = 0; i < addr.getMaxAddressLineIndex(); i++) {
  // your previous code here
  }
}
...