2012-02-16 3 views
1
GeoPoint point = new GeoPoint(
     (int) (userlocation.getLatitude() * 1E6), 
     (int) (userlocation.getLongitude() * 1E6)); 

Я создаю гео пункт как выше , но это не в точном местоположении пользователя это почти 500 до 600 метровGeoPoint Создание в андроида

Здесь userlocation это место я получаю от местоположения слушателя

В месте пользователя я получаю что-то вроде значения 18,453225455645 & +78,15446456546 Но пока черчения я могу использовать только 18.453225 78.154464 & , т. Е. Только шесть цифр после десятичного знака. если я пытаюсь использовать дополнительные значения, маркер показывает неправильное местоположение. (Это связано с значениями геоинформации в int)

Как я могу построить точное местоположение на карте ??

Отредактировано: - Я не думаю, что у кого-то есть решение по этому вопросу. Я проверил несколько приложений &, узнав одно приложение под названием myTaxi, которое имеет большую точность, чем карта Google, не знает, как это получается. В настоящее время я просто округляю широту & долгота.

Thank you

ответ

1

a. Просто удалив последние цифры после шести цифр, вы не получите ошибку 500-600 м, поскольку 5 цифр после десятичных знаков должны дать вам точность около 1 м.

b. Вы используете GPS или какой-либо другой провайдер местоположения? Используйте только GPS в качестве поставщика местоположения, если вы хотите точное местоположение. Существует уловка, хотя для GPS требуется прямая видимость для правильной работы.

 Смежные вопросы

  • Нет связанных вопросов^_^