Why is my current location different from Google Maps and the Location Services API?

The blue icon that represents the current location on the map is different from the location I get from the Location Services API.

googleApiClient = new GoogleApiClient.Builder(getApplicationContext())
        .addApi(LocationServices.API)
        .addConnectionCallbacks(new CustomConnectionCallbacks())
        .build();

locationRequest = new LocationRequest();
locationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
locationRequest.setInterval(1000);
locationRequest.setFastestInterval(1000);

LocationServices.FusedLocationApi.requestLocationUpdates(
    googleApiClient, 
    locationRequest, 
    new CustomLocationListener()
);

      

I'm trying to set a marker exactly where the user is, but when I use the last known location from the Location Services API, the marker is at a different position 25% of the time.

Is Google Maps being used by Google Services APIs? Am I using the correct configuration?

+3


source to share





All Articles