android 获取定位坐标,在百度地图出现大偏移的处理办法
生活随笔
收集整理的這篇文章主要介紹了
android 获取定位坐标,在百度地图出现大偏移的处理办法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
問題現象:
通過android原生api獲取到gps坐標,調用百度的地圖api在手機上顯示時,發現偏移距離超過1KM。
android獲取定位坐標的代碼,網上很多不再粘貼。
問題分析:
android原生api通過gps,wifi,蜂窩定位等獲取到的為真實的經緯度坐標。而百度、騰訊、高德等地圖上的坐標為修正坐標(處理過的坐標,非真實)
解決辦法:
通過百度提供的轉換代碼,將真實經緯度坐標轉換為修正坐標即可。
轉換地址:http://api.map.baidu.com/ag/coord/convert?from=0&to=4&x=113.540124&y=23.517846
返回結果:
{"error":0,"x":"MTEzLjU1MTgwNTY4NDE0","y":"MjMuNTIxMjMxNDk2OTAy"}轉換代碼如下:
$.ajax({type:"get",url:"http://api.map.baidu.com/ag/coord/convert?from=0&to=4&x="+lng+"&y="+lat,//采用http/https方式自行修改dataType:"jsonp",success:function(data){var dlng=atob(data.x);//base64解碼var dlat=atob(data.y);//異步回調},complete:function(){},error:function(a,b,c){alert(a+b+c);}});?
總結
以上是生活随笔為你收集整理的android 获取定位坐标,在百度地图出现大偏移的处理办法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 学生成绩管理系统的设计-实践周作业
- 下一篇: Linux 磁盘加密