已知地址获取经纬度方法:
private void getLatlon(String cityName){ GeocodeSearch geocodeSearch=new GeocodeSearch(this); geocodeSearch.setOnGeocodeSearchListener(new GeocodeSearch.OnGeocodeSearchListener() { @Override public void onRegeocodeSearched(RegeocodeResult regeocodeResult, int i) { } @Override public void onGeocodeSearched(GeocodeResult geocodeResult, int i) { if (i==1000){ if (geocodeResult!=null && geocodeResult.getGeocodeAddressList()!=null && geocodeResult.getGeocodeAddressList().size()>0){ GeocodeAddress geocodeAddress = geocodeResult.getGeocodeAddressList().get(0); double latitude = geocodeAddress.getLatLonPoint().getLatitude();//纬度 double longititude = geocodeAddress.getLatLonPoint().getLongitude();//经度 String adcode= geocodeAddress.getAdcode();//区域编码 Log.e("lgq地理编码", geocodeAddress.getAdcode()+""); Log.e("lgq纬度latitude",latitude+""); Log.e("lgq经度longititude",longititude+""); Log.i("lgq","dddwww===="+longititude); }else { Toast.makeText(MainActivity.this,"地名出错",Toast.LENGTH_SHORT).show(); // ToastUtils.show(context,"地址名出错"); } } } }); GeocodeQuery geocodeQuery=new GeocodeQuery(cityName.trim(),"29"); geocodeSearch.getFromLocationNameAsyn(geocodeQuery); }