get Default Back Facing Camera Instance - Android android.hardware

Android examples for android.hardware:Back Camera

Description

get Default Back Facing Camera Instance

Demo Code

import android.annotation.TargetApi;
import android.hardware.Camera;
import android.os.Build;

public class Main {

  /**// w  w w  .  j  a va 2 s  . c  om
   * @return the default rear/back facing camera on the device. Returns null if
   *         camera is not available.
   */
  public static Camera getDefaultBackFacingCameraInstance() {
    return getDefaultCamera(Camera.CameraInfo.CAMERA_FACING_BACK);
  }

  /**
   *
   * @param position
   *          Physical position of the camera i.e
   *          Camera.CameraInfo.CAMERA_FACING_FRONT or
   *          Camera.CameraInfo.CAMERA_FACING_BACK.
   * @return the default camera on the device. Returns null if camera is not
   *         available.
   */
  @TargetApi(Build.VERSION_CODES.GINGERBREAD)
  private static Camera getDefaultCamera(int position) {
    // Find the total number of cameras available
    int mNumberOfCameras = Camera.getNumberOfCameras();

    // Find the ID of the back-facing ("default") camera
    Camera.CameraInfo cameraInfo = new Camera.CameraInfo();
    for (int i = 0; i < mNumberOfCameras; i++) {
      Camera.getCameraInfo(i, cameraInfo);
      if (cameraInfo.facing == position) {
        return Camera.open(i);

      }
    }

    return null;
  }

}

Related Tutorials