android百度地图反编码,android 百度地图 正向地理编码GeoCoder
这里要注意的是:
mCoder.geocode(new GeoCodeOption().city(city).address(address));
必须放在监听后面,否则setOnGetGeoCodeResultListener监听不会回调,至少我遇到的是这样的,不知道其他人的是不是。同理,逆向地理编码也需要放在后面。
private static GeoCoder mCoder;
/**
* 正向地理编码获取坐标
* @param city 城市
* @param address 区县
*/
public static void getGeoCoder(String city,String address){
mCoder = GeoCoder.newInstance();
mCoder.setOnGetGeoCodeResultListener(new OnGetGeoCoderResultListener() {
@Override
public void onGetGeoCodeResult(GeoCodeResult geoCodeResult) {
if (null != geoCodeResult && null != geoCodeResult.getLocation()) {
if (null == geoCodeResult || geoCodeResult.error != SearchResult.ERRORNO.NO_ERROR) {
//没有检索到结果
return;
} else {
double latitude = geoCodeResult.getLocation().latitude;
double longitude = geoCodeResult.getLocation().longitude;
EventBus.getDefault().post(new EventGeoCoder(latitude,longitude));
}
//释放检索实例
mCoder.destroy();
}
}
@Override
public void onGetReverseGeoCodeResult(ReverseGeoCodeResult reverseGeoCodeResult) {
}
});
//必须设置在监听后面,否则监听无法回调。
mCoder.geocode(new GeoCodeOption().city(city).address(address));
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
