Naveen Kumar Naveen Kumar - 24 days ago 10
Android Question

getting latitude longitude 0.0 from googleMap.getCameraPosition().target

I was trying to get latitude and longitude of center of the map. I am using Fragment to show map that is,

SupportMapFragment fm = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.mapID);
if (fm != null) {
googleMap = fm.getMap();
}
LatLng loc = googleMap.getCameraPosition().target;


I am printing this loc and i am getting value as 0.0, 0.0. I am not getting where i am going wrong.

I tried to use
VisibleRegion
also to get latitude and longitude of center of map but even that did not help.

Answer

You are requesting the camera position when the map was not yet loaded, therefore the camera is pointing to 0.0, 0.0. Instead use this:

googleMap.setOnMapLoadedCallback(new GoogleMap.OnMapLoadedCallback() {
    @Override
    public void onMapLoaded() {
        Log.e("TAG", googleMap.getCameraPosition().target.toString());
    }
});