我想制作一个Android应用程序,其位置需要精确到1m或更小。 “融合位置管理器API”是否足够好,或者GPS是否永远无法做到如此精确,无论是否与其他传感器融合在一起? 如果是这样,有人知道在智能手机上获取更准确位置的方法吗?
谢谢!
答案 0 :(得分:1)
由于电池/数据消耗,不建议在Android手机中获得更高的准确性。如果没有问题,则可以使用以下代码
Integer gpsFreqInMillis = 1000;
Integer gpsFreqInDistance = 1; // in meters
locationManager.addGpsStatusListener(this);
locationManager.requestLocationUpdates(gpsFreqInMillis, gpsFreqInDistance, criteria, this, null);
答案 1 :(得分:0)
以前已经讨论过融合位置提供程序是否是一个不错的选择(该问题的答案是肯定的)。您可以在以下位置找到该帖子:Is Fused Location Provider good choice?
也许这就是您要寻找的:Android's most accurate Location API
希望这会有所帮助!
答案 2 :(得分:0)
有关GPS 3m的最大值,请参见https://gis.stackexchange.com/questions/43617/what-is-the-maximum-theoretical-accuracy-of-gps。那是在任何建筑物的外面。
所有其他传感器的精度均较低。如果您随时间进行多次测量并将其平均(仅适用于静止设备),也许会获得更高的准确性。
https://www.gpsworld.com/how-to-achieve-1-meter-accuracy-in-android/使用的wifi rtt(严格来说不是传感器)Fused Location Provider可以获得非常好的结果