1. 程式人生 > >安卓高德地圖API根據城市名獲取對應的經緯度和地理編碼

安卓高德地圖API根據城市名獲取對應的經緯度和地理編碼

 private void getLatlon(String cityName){

        GeocodeSearch geocodeSearch=new GeocodeSearch(context);
        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("地理編碼", geocodeAddress.getAdcode()+"");
                        Log.e("緯度latitude",latitude+"");
                        Log.e("經度longititude",longititude+"");

                    }else {
                        ToastUtils.show(context,"地址名出錯");
                    }
                }
            }
        });

        GeocodeQuery geocodeQuery=new GeocodeQuery(cityName.trim(),"29");
        geocodeSearch.getFromLocationNameAsyn(geocodeQuery);


    }