Android 基于位置的开发与百度地图 (二)
2014-10-08 16:36
429 查看
反向地理编码
上节中,我们只是获取到了当前位置的经纬度,但是很遗憾的是并不是每个人都能看懂,现在就来通过反向地理编码,将经纬度转化为我们看得懂的信息。<span style="font-size:14px;">new Thread(new Runnable() { @Override public void run() { //组装反向地理编码的接口地址 StringBuilder url=new StringBuilder(); url.append("http://maps.googleapis.com/maps/api/geocode/json?latlng="); url.append(location.getLatitude()).append(","); url.append(location.getLongitude()); url.append("&sensor=false"); HttpClient httpClient=new DefaultHttpClient(); HttpGet httpGet=new HttpGet(url.toString()); //在请求消息头中指定语言,保证服务器会返回中文数据 httpGet.addHeader("Accept-Language","zh-CN"); try { HttpResponse httpResponse=httpClient.execute(httpGet); if (httpResponse.getStatusLine().getStatusCode()==200){ HttpEntity entity=httpResponse.getEntity(); String response=EntityUtils.toString(entity,"utf-8"); JSONObject jsonObject=new JSONObject(response); JSONArray resultArray=jsonObject.getJSONArray("results"); if (resultArray.length()>0){ JSONObject subObject=resultArray.getJSONObject(0); String address=subObject.getString("formatted_address"); Message message=new Message(); message.what=SHOW_LOCATION; message.obj=address; handler.sendMessage(message); } } } catch (ClientProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }).start(); } private Handler handler =new Handler(){ @Override public void handleMessage(Message msg) { switch (msg.what){ case SHOW_LOCATION: String currentPosition=(String)msg.obj; textView.setText(currentPosition); break; default: break; } } };</span>
相关文章推荐
- android 开发:仿照微信 发送本人位置(基于百度地图)(前篇)
- android 开发:仿照微信 发送本人位置(基于百度地图)(后篇)
- Android 基于位置的开发与百度地图(一)
- Android基于位置的服务开发,百度地图的使用
- iOS基于百度地图的开发(1)——用户当前位置
- (android地图开发) 基于百度Lbs服务定位用户的当前位置
- Android百度地图开发 百度地图得到当前位置
- Android 百度地图开发 地理位置与空间坐标互编译 源码示例 ——2
- Android开发 百度地图之传送一个详细地址获取在地图上的位置
- 阅读郭林《第一行代码》的笔记——第11章 Android特色开发,基于位置的服务
- Android特色开发——基于位置的服务
- Android 特色开发,基于位置的服务
- Android实战--基于位置的服务(获取自己位置的经纬度+百度地图)
- android百度地图开发之自动定位所在位置与固定位置进行驾车,步行,公交路线搜索
- Android百度地图开发之显示当前位置地图
- Android开发仿位置共享功能基于高德地图
- Android 基于百度地图开发定位以及获取当前详细地址(一)
- android百度地图开发之自动定位所在位置与固定位置进行驾车,步行,公交路线搜索
- [android] 百度地图开发 (二).定位城市位置和城市POI搜索
- [android] 百度地图开发 (三).定位当前位置及getLastKnownLocation获取location总为空问题