code: public static BoundingBox getBoundingBox(GoogleMap map) {
  
          LatLngBounds visibleBounds = map.getProjection()
                  .getVisibleRegion().latLngBounds;
          LatLng southwest = visibleBounds.southwest;
          LatLng northeast = visibleBounds.northeast;
  
          double minLatitude = southwest.latitude;
          double maxLatitude = northeast.latitude;
  
          double minLongitude = southwest.longitude;
          double maxLongitude = northeast.longitude;
          if (maxLongitude < minLongitude) {
              maxLongitude += (2 * ProjectionConstants.WGS84_HALF_WORLD_LON_WIDTH);
          }
  
          BoundingBox boundingBox = new BoundingBox(minLongitude, minLatitude, maxLongitude, maxLatitude);
  
          return boundingBox;
      }
docs: Get the WGS84 bounding box of the current map view screen.
  The max longitude will be larger than the min resulting in values larger than 180.0.
  
  @param map google map
  @return current bounding box