android地图获取坐标,获取地址描述数据-获取地图数据-开发指南-Android 地图SDK | 高德地图API...

地理编码(地址转坐标)

地理编码基本介绍

地理编码,又称为地址匹配,是从已知的结构化地址描述到对应的经纬度坐标的转换过程。该功能适用于根据用户输入的地址确认用户具体位置的场景,常用于配送人员根据用户输入的具体地址找地点。

结构化地址的定义: 首先,地址肯定是一串字符,内含国家、省份、城市、城镇、乡村、街道、门牌号码、屋邨、大厦等建筑物名称。按照由大区域名称到小区域名称组合在一起的字符。一个有效的地址应该是独一无二的。注意:针对大陆、港、澳地区的地理编码转换时可以将国家信息选择性的忽略,但省、市、城镇等级别的地址构成是不能忽略的。

注意:该功能可以返回一部分POI数据内容,但核心能力是完成结构化地址到经纬度的转换。POI关键字搜索,是根据关键词找到现实中存在的地物点(POI)。

地理编码是依据当前输入,根据标准化的地址结构(省/市/区或县/乡/村或社区/商圈/街道/门牌号/POI)进行各个地址级别的匹配,以确认输入地址对应的地理坐标,只有返回的地理坐标匹配的级别为POI,才会对应一个具体的地物(POI)。

根据给定的地理名称和查询城市,返回地理编码的结果列表。显示效果如图:

170daae326c279b340aa062336caccdf.png

实现步骤如下:

1、继承 OnGeocodeSearchListener 监听。

2、构造 GeocodeSearch 对象,并设置监听。

geocoderSearch = new GeocodeSearch(this);

geocoderSearch.setOnGeocodeSearchListener(this);

3、通过 GeocodeQuery(java.lang.String locationName, java.lang.String city) 设置查询参数,调用 GeocodeSearch 的 getFromLocationNameAsyn(GeocodeQuery geocodeQuery) 方法发起请求。

// name表示地址,第二个参数表示查询城市,中文或者中文全拼,citycode、adcode

GeocodeQuery query = new GeocodeQuery(name, "010");

geocoderSearch.getFromLocationNameAsyn(query);

4、通过回调接口 onGeocodeSearched 解析返回的结果。

说明:

1)可以在回调中解析result,获取坐标信息。

2)返回结果成功或者失败的响应码。1000为成功,其他为失败(详细信息参见网站开发指南-实用工具-错误码对照表)

@Override

public void onGeocodeSearched(GeocodeResult result, int rCode) {

//解析result获取坐标信息

}

逆地理编码(坐标转地址)

逆地理编码,又称地址解析服务,是指从已知的经纬度坐标到对应的地址描述(如行政区划、街区、楼层、房间等)的转换。常用于根据定位的坐标来获取该地点的位置详细信息,与定位功能是黄金搭档。

bd6f43cef6a9af43c09d23b58a59b1e3.png

示例代码如下:

1、继承 OnGeocodeSearchListener 监听。

2、构造 GeocodeSearch 对象,并设置监听。

geocoderSearch = new GeocodeSearch(this);

geocoderSearch.setOnGeocodeSearchListener(this);

3、通过 RegeocodeQuery(LatLonPoint point, float radius, java.lang.String latLonType) 设置查询参数,调用 GeocodeSearch 的 getFromLocationAsyn(RegeocodeQuery regeocodeQuery) 方法发起请求。

// 第一个参数表示一个Latlng,第二参数表示范围多少米,第三个参数表示是火系坐标系还是GPS原生坐标系

RegeocodeQuery query = new RegeocodeQuery(latLonPoint, 200,GeocodeSearch.AMAP);

geocoderSearch.getFromLocationAsyn(query);

4、通过回调接口 onRegeocodeSearched 解析返回的结果。

说明:

1)可以在回调中解析result,获取地址、adcode等等信息。

2)返回结果成功或者失败的响应码。1000为成功,其他为失败(详细信息参见网站开发指南-实用工具-错误码对照表)

@Override

public void onRegeocodeSearched(RegeocodeResult result, int rCode) {

//解析result获取地址描述信息

}

注意事项

请注意:使用上述功能需要下载地图SDK,导入搜索功能的jar包。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值