title: Android Google Map move camera doesn't work
body: <p>I've looked at everything I can find on this, and haven't found a solution.  I'm trying to do something very simple:</p>
  
  <pre><code>protected void moveCamera(final LatLng position, final float zoom) {
      getMap(new OnMapReadyCallback() {
          @Override
          public void onMapReady(final GoogleMap googleMap) {
  
              logger.debug("Moving map to " + position);
              CameraPosition cameraPosition = new CameraPosition.Builder()
                      .target(position)
                      .zoom(zoom)
                      .build();
              googleMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
  
          }
      });
  }
  </code></pre>
  
  <p>Nothing happens.  No errors, no camera movement. I've also tried <code>moveCamera</code> instead.  I've tried different types of calls to <code>CameraUpdateFactory</code>, I've tried moving and zooming separately, I've tried posting with a <code>Handler</code> with a delay.  Sometimes this works perfectly, but if I leave the fragment with the map and come back, then it doesn't work.  The map resets to latitude 0,0 and standard map type (it was set to hybrid) and I can't get it to do anything.  I know the method is getting called by logging statements.  Is there some kind of lifecycle thing I need to do to make sure the map can be restored?</p>
  
  <p>I'd really prefer not to switch to Mapbox or something because that would be a lot of work to fix a little bug, but I need this to work correctly.</p>