if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(getPosition,getPositionError, {
// 指示浏览器获取高精度的位置,默认为false
enableHighAccuracy: true,
// 指定获取地理位置的超时时间,默认不限时,单位为毫秒
timeout: 5000,
// 最长有效期,在重复获取地理位置时,此参数指定多久再次获取位置。
maximumAge: 3000
});
}
上面这段代码,在H5相关的定位中,随处可见,这是用手机端或者电脑端自己的GPS定位,但是之前我通过这个测试发现,非常不准确。电脑端直接报错。
- 手机端如果是套用百度的那一套API会飘得很厉害,据观察是用的基站定位。
- 后来我一想百度这么挫?我就用上面原生的代码来获取,发现常常报错:
使用Geolocation方法存在错误信息error.POSITION_UNAVAILABLE
查了很久,电脑端一直就不可以,最后终于知道了,划重点:
现在GPS的服务,最好是https,http基本上越来越不被支持了。chrome甚至直接弹出说只有https才能获取定位。
再次测试,超级准,准到没朋友。误差10米以内。
网友评论