微信小程序获取位置信息
wx.getLocation({
type: 'wgs84',
success: function(res) {
var latitude = res.latitude
var longitude = res.longitude
var speed = res.speed
var accuracy = res.accuracy
}
})
根据官网说明,type有两种。默认为 wgs84 返回 GPS 坐标;gcj02 返回国测局坐标(也就是火星坐标)。采用百度地图进行位置解析,返回的位置信息,这两种都不太准确。
百度地图地址解析的具体过程参考:http://lbsyun.baidu.com/index.php?title=wxjsapi/guide/getlocation
有些网友分析是产品的问题,换成腾讯地图进行地址解析,具体过程参考:http://lbs.qq.com/qqmap_wx_jssdk/method-reverseGeocoder.html。返回的结果比较准确
坐标系:
国测局坐标(火星坐标,GCJ02):
搜搜、阿里云、高德、腾讯地图等
百度坐标(BD09):
百度地图
WGS84坐标系:
国际标准,谷歌国外地图、osm地图等国外的地图
从上面的坐标系知识可以看到,腾讯和百度使用的不是同一套的坐标。如果想使用百度地图,需要进行坐标转换。参考: http://wandergis.com/coordtransform/