public void mockLocation(LatLng latLng1, LatLng latLng2) {
   latLngTMinusDeltaT[t % deltaT] = latLng1;
   if (t < deltaT) {
     locationClient.setMockLocation(map(latLng1, latLng2));
   } else {
     float bearing =
         (float) GeometryUtils.initialBearing(latLngTMinusDeltaT[(t + 1) % deltaT], latLng1);
     locationClient.setMockLocation(map(latLng1, bearing));
   }
   t++;
 }
 private Location map(LatLng latLng1, LatLng latLng2) {
   Location location = new Location(PROVIDER);
   location.setLatitude(latLng1.lat);
   location.setLongitude(latLng1.lng);
   location.setAccuracy(3.0f);
   location.setTime(System.currentTimeMillis());
   location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());
   location.setBearing((float) GeometryUtils.initialBearing(latLng1, latLng2));
   location.setSpeed(13.4f);
   location.setAltitude(0d);
   return location;
 }