Android中的GeoPoint创建

时间:2012-02-16 09:28:53

标签: android geolocation android-maps geopositioning

GeoPoint point = new GeoPoint(
       (int) (userlocation.getLatitude() * 1E6),
       (int) (userlocation.getLongitude() * 1E6));

我正在创建如上所述的地理点 但它不在用户的确切位置 它距离近500到600米

此处userlocation是我从位置监听器获取的位置

在用户位置,我得到类似的值 18.453225455645& 78.15446456546 但是在绘图时我只能使用 18.453225& 78.154464 即 - 小数点后只有六位数。如果我尝试使用额外值标记显示错误的位置。(这是由于335中的geopoint需要值)

如何在地图上绘制确切位置?

编辑: - 我认为没有人能解决这个问题。我查了几个应用程序&找到一个名为myTaxi的应用程序,它比谷歌地图更准确,不知道他们是如何得到的。目前我只是围绕纬度和经度经度。

谢谢

1 个答案:

答案 0 :(得分:1)

一个。只需删除六位数之后的最后几位数就不会给出500-600米的误差,因为小数位后的5位数应该可以给出大约1米的精度。

湾您使用GPS或其他位置提供商吗?如果您想要准确的位置,请仅使用GPS作为位置提供商。虽然GPS需要视线才能正常工作,但仍有一个问题。