猿问

用weixin获取地理位置接口返回的经伟度在百度地图使用误差太多,何解?

要在公众号里面做一个活动,需要获取用户的位置,我是用JSSDK来获取的用户的经伟度,然后用百度地图输出详细地址,结果相差两条街,但是直接使用微信内置地图查看位置的时候,定位蛮准备的呢,为什么呢,如果用微信内置地图查看位置,要怎么把地址输出来呢。
wx.ready(function(){
wx.getLocation({
type:'gcj02',//wgs84或gcj02
success:function(res){
varlatitude=res.latitude;//纬度,浮点数,范围为90~-90
varlongitude=res.longitude;//经度,浮点数,范围为180~-180。
varMJKD_LATLNG=latitude+','+longitude;
varurl='http://api.map.baidu.com/geocoder/v2/?ak=ak&callback=renderReverse&location='+MJKD_LATLNG+'&output=json&pois=1';
$.get(url,function(data){
if(data.status===0){
alert(data.result.formatted_address+'=>'+data.result.sematic_description);
}
},'jsonp');
},
fail:function(res){
alert('获取位置失败');
}
});
});
不知道大家可否有什么好的方式获取比较确认的经伟度呢?
慕容3067478
浏览 502回答 2
2回答

函数式编程

腾讯用的是GCJ02坐标系,百度是改装之后的百度系,你可以转换成百度标准的经纬度在使用,高德地图与腾讯地图使用的是同一坐标体系,因此你用腾讯或者高德的API是一样的.
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答