Обратный вопрос геокодирования

1

Я применил обратное геокодирование в своем приложении, и оно работает, но иногда это происходит очень странно.

Код состоит в том, что

            List<Address> addresses = geo.getFromLocation(
                    obj.getLatitude(), obj.getLongitude(), 1);


            List<Address> address = geo.getFromLocationName( addresses.get(0).getLocality().getBytes() , 1 );


            Address location = address.get(0);

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

Это работает, но я сталкиваюсь с очень странной проблемой! Попробовав приложение с помощью приложения fakegps, я установил свою позицию в "Суньоа", и первый адрес был найден правильно, но когда я пытаюсь получить общие координаты, я получаю "Нуноа", которого нет в Чили, но в Перу! ! Это бессмысленно! почему это?

Спасибо за помощь

  • 0
    Я решил это! Когда вы используете Android API и вы вводите только название города, Google получает первый город с этим именем в списке! Я решил создать строку, которая является объединением obj.getLocality () + "," + obj.getAdminArea ().
  • 0
    Вы можете опубликовать свой полный код?
Теги:
reverse-geocoding

1 ответ

0
Лучший ответ

Конечно, Swathi.

List<Address> addresses = geo.getFromLocation(msg_r.getLatitude(),
                msg_r.getLongitude(), 1);
        String geoL = addresses.get(0).getLocality() + ", " + addresses.get(0).getAdminArea() + ", " + addresses.get(0).getCountryCode();

                // reverse-reverseGeocoding
                List<Address> address = geo.getFromLocationName(geoL, 1);

                System.out.println("Where I am? " + geoL);
                Address location = address.get(0);

                // generic coordinate for the locality/city/town
                location.getLatitude();
                location.getLongitude();

Ещё вопросы

Сообщество Overcoder
Наверх
Меню