利用百度 Geocoding 位置、经纬度互转

本文介绍如何使用百度地图API实现从地址获取经纬度信息及从经纬度反查地址的方法。包括构造请求URL、解析响应数据等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、利用位置得到经纬度:

String url="http://api.map.baidu.com/geocoder/v2/?address=" +place1+
                "&ak=cev92xxxxxxxxx4HibK&callback=showLocation&" +
                "output=json&pois=0&mcode=" +              "9F:F9:BF:E5:B1:FF:71:2C:xxxxxxxxxxxxxxxxxxx;com.xxxxxxx.xxxxxxxx";

利用get网络请求这个url;
其中 place1:地址;
ak:开发者平台的应用ak;
mcode:安全码;
最后是包名;

成功返回:

showLocation&&showLocation({"status":0,"result":{"location":{"lng":120.1609994741205,"lat":30.26998128653152},"precise":1,"confidence":80,"level":"道路"}})

解析得到 经纬度。
解析这个就很纳闷 我只想到了

String str2=str.replace("showLocation&&showLocation(","");
String str3=str2.replace(")","");

然后后面就JSONObject 了。好low啊 没想到更好的办法了。。。

2、传经纬度 得到位置

String url3="http://api.map.baidu.com/geocoder/v2/?ak=xxxxxxxxxxxxxxxxxxxxx&callback=renderReverse&location=39.983424,116.322987&output=json&pois=1&mcode=" +
        "9F:F9:BF:E5:B1:FF:71:2C:ED:5B:6Axxxxxxxxxxxxxxxxx;com.xxxxxx.xxxxxx";

替换了
callback=showLocation —->callback=renderReverse
address=位置—->location =经纬度

返回值的格式也差不多
具体看:http://api.map.baidu.com/lbsapi/cloud/webservice-geocoding.htm

参考:
http://blog.youkuaiyun.com/zfs2008zfs/article/details/52819274
http://blog.youkuaiyun.com/zhangli_/article/details/50115997

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值