1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Android百度地图将经纬度转换为地址信息

Android百度地图将经纬度转换为地址信息

时间:2020-05-19 20:27:00

相关推荐

Android百度地图将经纬度转换为地址信息

正题:

实现经纬度转为地址信息,主要用到的类是GeoCoder,通过newInstance获得类的实例。

用到的方法为publicbooleanreverseGeoCode(ReverseGeoCodeOptionoption)即反向解析,发起反地理编码请求(经纬度->地址信息)

与其对应的是方法为publicbooleangeocode(GeoCodeOptionoption),正向解析,(地址信息->经纬度)。

reverseGeoCode和geocode只是进行了对应的查询,并不立即返回查询结果,而是通过设置监听器,监听返回结果,方法为:

public voidsetOnGetGeoCodeResultListener(OnGetGeoGoderResultListenerlistener)

将实现部分封装在BdUtils类中,这里仅实现了反向解析,即经纬度->地址信息,其他功能可根据自己需要添加

[plain]view plain copy emptypublicclassBdMapUtils{ //privateMKSearchmkSearch; //创建地理编码检索实例 staticGeoCodergeoCoder=GeoCoder.newInstance(); /** *将经度纬度反向译为文字地址 * *@paramlon *经度 *@paramlat *纬度 *@paramlistener *OnGetGeoCoderResultListener监听器,对接收到的结果进行处理 */ publicstaticvoidreverseGeoParse(doublelon,doublelat, OnGetGeoCoderResultListenerlistener){ geoCoder.setOnGetGeoCodeResultListener(listener); LatLngpt1=newLatLng(lat,lon); geoCoder.reverseGeoCode(newReverseGeoCodeOption().location(pt1)); } }

调用部分

[plain]view plain copy doublelongitude=117.11666; doublelatitude=54.12300;//应为百度地图对应的经纬度 BdMapUtils.reverseGeoParse(Double.parseDouble(longitude,latitude,newOnGetGeoCoderResultListener(){ //获取正向解析结果时执行函数 @Override publicvoidonGetGeoCodeResult(GeoCodeResultarg0){ } //获取反向解析结果时执行函数 @Override publicvoidonGetReverseGeoCodeResult(ReverseGeoCodeResultresult){ if(result==null||result.error!=SearchResult.ERRORNO.NO_ERROR){ //没有检测到结果 Toast.makeText(LocationActivity.this,"抱歉,未能找到结果!",Toast.LENGTH_LONG); }else{得到结果后处理方法 Toast.makeText(LocationActivity.this,"地址为:"+result.getAddress(),Toast.LENGTH_LONG); } } });

运行时报错:you have not supplyed the global app context info from SDKInitializer.initialize(Context) function.

需要通过编写自己的Application类,如叫MyApplication,继承自系统的Application类,在其onCreate函数中添加语句SDKInitializer.initialize(this);

[plain]view plain copy publicclassMyApplicationextendsApplication{ @Override publicvoidonCreate(){ super.onCreate(); SDKInitializer.initialize(this); } }

参考文档:

http://wiki./cms/androidsdk/doc/1025v4.1.1/index.html

/crazy1235/article/details/43377545

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。