浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。

Android 地图SDK

百度地图SDK是一套应用程序接口, 通过调用地图SDK接口,开发者可以轻松访问百度地图的服务和数据,构建功能丰富、交互性强的地图类应用程序。

地理编码指的是将地址信息建立空间坐标关系的过程。又可分为正向地理编码和反向地理编码。
地理编码(即地址转坐标)
1创建地理编码检索实例;
mSearch = GeoCoder.newInstance();
2创建地理编码检索监听者;
OnGetGeoCoderResultListener listener = new OnGetGeoCoderResultListener() {  

    public void onGetGeoCodeResult(GeoCodeResult result) {  

        if (result == null || result.error != SearchResult.ERRORNO.NO_ERROR) {  
            //没有检索到结果  
        }  

        //获取地理编码结果  
    }  
 
    @Override  

    public void onGetReverseGeoCodeResult(ReverseGeoCodeResult result) {  

        if (result == null || result.error != SearchResult.ERRORNO.NO_ERROR) {  
            //没有找到检索结果  
        }  

        //获取反向地理编码结果  
    }  
};

3设置地理编码检索监听者;
mSearch.setOnGetGeoCodeResultListener(listener);
4发起地理编码检索;
mSearch.geocode(new GeoCodeOption()  

    .city(“北京”)  
    .address(“海淀区上地十街10号”);

5释放地理编码检索实例;
mSearch.destroy();
逆地理编码(即坐标转地址)

反向地理编码服务实现了将地址坐标转换为标准地址的过程。反向地理编码提供了坐标定位引擎,帮助用户通过地面某个地物的坐标值来反向查询得到该地物所在的行政区划、所处街道、以及最匹配的标准地址信息。通过丰富的标准地址库中的数据,可帮助用户在进行移动端查询、商业分析、规划分析等领域创造无限价值。

常用于根据定位的坐标来获取该地点的位置详细信息,与定位功能是黄金搭档。

反向地理编码的实现形式与正向地理编码的方式相同,核心代码如下:

1创建地理编码检索实例;
mSearch = GeoCoder.newInstance();
2创建地理编码检索监听者;
OnGetGeoCoderResultListener listener = new OnGetGeoCoderResultListener() {  

    public void onGetGeoCodeResult(GeoCodeResult result) {  

        if (result == null || result.error != SearchResult.ERRORNO.NO_ERROR) {  
            //没有检索到结果  
        }  

        //获取地理编码结果  
    }  
 
    @Override  

    public void onGetReverseGeoCodeResult(ReverseGeoCodeResult result) {  

        if (result == null || result.error != SearchResult.ERRORNO.NO_ERROR) {  
            //没有找到检索结果  
        }  

        //获取反向地理编码结果  
    }  
};

3设置地理编码检索监听者;
mSearch.setOnGetGeoCodeResultListener(listener);
4发起地理编码检索;
mSearch.reverseGeoCode(new ReverseGeoCodeOption()
       .location(ptCenter));

5释放地理编码检索实例;
mSearch.destroy();

获取RGC最新版数据

自v4.5.2起,支持反馈最新版数据,ReverseGeoCodeOption中增加int型的latest_admin成员变量来标识是否返回新版数据。 默认值为0,表示返回旧版数据,值为1,表示返回新版数据。

public int latest_admin=1;  //返回新版数据

获取adcode数据

自v4.5.2起,ReverseGeoResult中增加获取adcode接口。

注意:当检索时,设置latest_admin值为1,即需要获取新版数据时,结果以adcode为准,旧版citycode数据与新版数据不匹配.

    /**
      * 返回行政区号
      * @return
      */
      public int getAdcode(){
          return addressDetail.adcode;
      }

RGC使用技巧

(1)查找某个坐标点周边的主要POI点(周围的建筑物),而不是街道信息。

使用反地理编码检索,在ReverseGeoCodeResult中通过getPoiList()获取位置附近的POI信息。