title: FusedLocationApi is deprecated
body: <p>FusedLocationApi was working fine now
  "FusedLocationApi" is deprecated why? anyone please check my code </p>
  
  <pre><code>public class DriverMapActivity extends FragmentActivity implements OnMapReadyCallback, GoogleApiClient.ConnectionCallbacks,
          GoogleApiClient.OnConnectionFailedListener, com.google.android.gms.location.LocationListener {
  
  private GoogleMap mMap;
  GoogleApiClient mGoogleApiClient;
  Location mLastLocation;
  LocationRequest mLocationRequest;
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_driver_map);
      // Obtain the SupportMapFragment and get notified when the map is ready to be used.
      SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
              .findFragmentById(R.id.map);
      mapFragment.getMapAsync(this);
      private FusedLocationProviderClient mFusedLocationClient;
      mFusedLocationClient = LocationServices.getFusedLocationProviderClient(this);
      if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED &amp;&amp; ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
          // TODO: Consider calling
          //    ActivityCompat#requestPermissions
          // here to request the missing permissions, and then overriding
          //   public void onRequestPermissionsResult(int requestCode, String[] permissions,
          //                                          int[] grantResults)
          // to handle the case where the user grants the permission. See the documentation
          // for ActivityCompat#requestPermissions for more details.
          return;
      }
      mFusedLocationClient.getLastLocation()
              .addOnSuccessListener(this, new OnSuccessListener&lt;Location&gt;() {
                  @Override
                  public void onSuccess(Location location) {
  
                  }
              });
  }
  
  @Override
  public void onMapReady(GoogleMap googleMap) {
      mMap = googleMap;
      if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED &amp;&amp; ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
  
          return;
      }
      buildGoogleApiClient();
      mMap.setMyLocationEnabled(true);
  
  }
  protected  synchronized  void buildGoogleApiClient()
  {
      mGoogleApiClient=new GoogleApiClient.Builder(this)
              .addConnectionCallbacks(this)
              .addOnConnectionFailedListener(this)
              .addApi(LocationServices.API)
              .build();
      mGoogleApiClient.connect();
  }
      @Override
      public void onLocationChanged(Location location) {
          mLastLocation = location;
          LatLng latLng=new LatLng(location.getLatitude(),location.getLongitude());
          mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));
          mMap.animateCamera(CameraUpdateFactory.zoomTo(11));
      }
  
  
  
  @Override
  public void onConnected(@Nullable Bundle bundle) {
      mLocationRequest = new LocationRequest();
      mLocationRequest.setInterval(1000);
      mLocationRequest.setFastestInterval(1000);
      mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
      if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED &amp;&amp; ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
  
          return;
      }
      LocationServices.FusedLocationApi.requestLocationUpdates(
              mGoogleApiClient, mLocationRequest, this);
  }
  
  @Override
  public void onConnectionSuspended(int i) {
  
  }
  
  @Override
  public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
  
  }
  </code></pre>
  
  <p>}</p>
  
  <p>i think i am near to solve the problem i have checked some other question but never solved for me also i have tried to follow the google <a href="https://developer.android.com/training/location/retrieve-current.html#play-services" rel="nofollow noreferrer">documentation</a> but still i am unable to solve . actually i am following some youtube tutorials and the guy have used it in 2017 i guess and that was working for him ... but unfortunately not for me any one can help me Thanks in advance</p>