我试图使用getLatitudeE6();但是eclipse给我看错:
方法getLatitudeE6()未定义类型Location
如果我改为getLatitude();没有E6,它工作正常,没有错误。但我的目标是获得准确的纬度和经度,以便用distanceTo()计算2点之间的准确距离;所以我想使用getLatitudeE6
location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
double finishLati=location.getLatitudeE6() / 1E6;
double finishLongi=location.getLongitudeE6() / 1E6;
distanceTo函数:
Location locationA = new Location("A");
locationA.setLatitude(startLati);
locationA.setLongitude(startLongi);
Location locationB = new Location("B");
locationB.setLatitude(finishLati);
locationB.setLongitude(finishLongi);
double distance = locationA.distanceTo(locationB);
答案 0 :(得分:1)
使用getLatitudeE6()
vs getLatitude()
与您获得准确位置无关。实际上你不能使用getLatitudeE6,因为它不存在,因为你可以从尝试使用它时得到的错误中看到它。
问题是您使用的getLastKnownLocation
可能是一个小时的位置,或者甚至根本无法返回您的位置