使用Geocoding 做经纬度的正反编绎

---恢复内容开始---

基本安卓本身自带的Geocoder这个类其实也可以实现对于经纬度的正反向编绎,但是它自身的bug存在不少,尤其在解析的稳定性这里而言,谷歌所提供的Geocoding 稳定性更加的好,虽然它的用法复杂了一点点,其实它大体的工作原理还是http协议,谷歌有对外开放的接口,我们将经纬值做为参数传给谷歌的服务器,然后它会将解析好的数据再次返回给我们

 

它的接口格式如下:

http://maps.googleapis.com/maps/api/geocode/json?latlng=40.90,-74.9&sensor=true_or_false

 

从http一直到geocode/都是固定地址,而后面的json表示返回的数据格式,换成xml也行,再后面就清楚了,你想解析的经纬度值是什么你就

填上什么就是了,后面的是判断这个请求是否来自于设备的sersor,一般来讲设成false就可以了

 

顺利的话,我们会得到这样的JSON格式数据:

“formatted_address” : "277     ,"

对于JSON数据的解析就简单了,不过如果谷歌被封的话就没有办法了,最近尝试的时候发现谷歌服务器一直连接不上,只能继续等待了过几天试试比较好

 

测试用的代码如下:

 

 

 

---恢复内容结束---

posted on 2016-12-04 17:49  snowgirl  阅读(271)  评论(0编辑  收藏  举报

导航