有各种类型的地点。网络位置和GPS位置。在网络位置,getAccuracy()工作正常。
但是在GPS位置我得到的位置是getAccuracy()= {5m,10m,15m}。我在地图上检查位置,有时候还可以。但在40%的情况下{5m,10m,15m}是真实的{300m,100m,500m}。
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
MIN_TIME_BW_UPDATES, MIN_DISTANCE_CHANGE_FOR_UPDATES,
locationListenerGPS);
(...)
LocationListener locationListenerGPS = new LocationListener() {
public void onLocationChanged(Location location) {
//Process location
sendLocation(location);
}
public void onStatusChanged(String provider, int status, Bundle extras) {
}
public void onProviderEnabled(String provider) {
}
public void onProviderDisabled(String provider) {
}
};
在示例图像中,getAccuracy()= 6.6m,实际误差为239.15m
答案 0 :(得分:1)
Location#getAccuracy()提供了估计位置在给定半径内的概率为68%。无法保证真实位置始终在所提供的精度范围内。
答案 1 :(得分:0)
如果您希望将这些GPS坐标捕捉到道路上,请尝试Google Roads API
使用此API时,获得超精确的gps坐标并不重要。