Google地图和Google Geolocation API之间的准确性差异

时间:2015-07-01 05:26:19

标签: javascript android google-maps

我发现了很多关于地理位置准确性的处理方法,但没有解决Google API和地图之间的区别。这是在Android Chrome上。

事实上,两者之间存在很大差异。 API给我最多30米,但地图管理不到10分。给出了什么?以下是我的代码中的代码段:

<script type="text/javascript"
 src="https://maps.googleapis.com/maps/api/js?sensor=true">
</script>

然后:

function getLoc() {
 navigator.geolocation.getCurrentPosition(showLoc, errorLoc,
  {maximumAge:15000, timeout:60000, enableHighAccuracy:true});
}

function showLoc(position) {
 var elt = document.getElementById("userloc");
 elt.innerHTML = "Lat " + position.coords.latitude + "&nbsp;&nbsp;" +
                 "Long " + position.coords.longitude + "&nbsp;&nbsp;" +
                 "Accuracy " + position.coords.accuracy;
}

function errorLoc(msg) {
 alert(msg);
}

1 个答案:

答案 0 :(得分:0)

可能是因为您只采集了一个地质样本。 gps硬件很冷,谷歌给你的准确性结果是基于它在一定时间内收到的其他样本数量。

在短时间内拍摄大量样本,看看是否能发现差异。然后选择您认为可以在精度,采样时间和电池消耗之间进行最佳权衡的选择。

在5秒内轮询时,报告的准确度在3-5米范围内并不罕见。但这并不是它的真实准确性,只是数据的一致性。像建筑物,墙壁这样的东西可能会扭曲结果(频率旅行所需的时间)而不会影响报告的准确性(数据的明显一致性)。

如果你的btw持续30m(因为它根本没有波动),可能是因为gps硬件已被禁用,并且它使用wifi互联网地址查找作为备份。