如何从经纬度获取地址android google map v2

USS*_*204 2 android google-maps latitude-longitude android-maps-v2

我想在Android谷歌地图v2中获取经纬度的地址,但它有误.

这是我的代码:

case PLACES_DETAILS :
                final HashMap<String, String> hm = result.get(0);

                final double latitude = Double.parseDouble(hm.get("lat"));
                final double longitude = Double.parseDouble(hm.get("lng"));

                SupportMapFragment fm = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
                googleMap = fm.getMap();

                final LatLng point = new LatLng(latitude, longitude);
                CameraUpdate cameraPosition = CameraUpdateFactory.newLatLngZoom(point, 10);
                CameraUpdate cameraZoom = CameraUpdateFactory.zoomBy(5);

                googleMap.moveCamera(cameraPosition);
                googleMap.animateCamera(cameraZoom);
                googleMap.getCameraPosition();
                //Log.e("Lat", String.valueOf(googleMap.getCameraPosition().target.latitude));
                //Log.e("Long", String.valueOf(googleMap.getCameraPosition().target.latitude));
                //googleMap.setOnMyLocationChangeListener(myLocationChangeListener);

                googleMap.setOnCameraChangeListener(new GoogleMap.OnCameraChangeListener() {
                    @Override
                    public void onCameraChange(CameraPosition cameraPosition) {
                        Log.e("Lat", String.valueOf(googleMap.getCameraPosition().target.latitude));
                        Log.e("Long", String.valueOf(googleMap.getCameraPosition().target.longitude));
                    }
                });
Run Code Online (Sandbox Code Playgroud)

cod*_*lor 7

使用以下代码段:

try { 
Geocoder geo = new Geocoder(youractivityclassname.this.getApplicationContext(), Locale.getDefault());
List<Address> addresses = geo.getFromLocation(latitude, longitude, 1);
if (addresses.isEmpty()) {
    yourtextfieldname.setText("Waiting for Location"); 
} 
else { 
    if (addresses.size() > 0) {
        yourtextfieldname.setText(addresses.get(0).getFeatureName() + ", " + addresses.get(0).getLocality() +", " + addresses.get(0).getAdminArea() + ", " + addresses.get(0).getCountryName());
        //Toast.makeText(getApplicationContext(), "Address:- " + addresses.get(0).getFeatureName() + addresses.get(0).getAdminArea() + addresses.get(0).getLocality(), Toast.LENGTH_LONG).show(); 
    } 
} 
}    
   catch (Exception e) {
e.printStackTrace(); // getFromLocation() may sometimes fail
} 
Run Code Online (Sandbox Code Playgroud)

参考:https: //mobiforge.com/design-development/using-google-maps-android