diff options
Diffstat (limited to 'core/java')
-rw-r--r-- | core/java/android/hardware/Camera.java | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/core/java/android/hardware/Camera.java b/core/java/android/hardware/Camera.java index 275e2eb..378189e 100644 --- a/core/java/android/hardware/Camera.java +++ b/core/java/android/hardware/Camera.java @@ -211,8 +211,7 @@ public class Camera { * blocking the main application UI thread. * * @param cameraId the hardware camera to access, between 0 and - * {@link #getNumberOfCameras()}-1. Use {@link #CAMERA_ID_DEFAULT} - * to access the default camera. + * {@link #getNumberOfCameras()}-1. * @return a new Camera object, connected, locked and ready for use. * @throws RuntimeException if connection to the camera service fails (for * example, if the camera is in use by another process). @@ -222,18 +221,21 @@ public class Camera { } /** - * The id for the default camera. - * @see #open(int) - */ - public static int CAMERA_ID_DEFAULT = 0; - - /** - * Equivalent to Camera.open(Camera.CAMERA_ID_DEFAULT). - * Creates a new Camera object to access the default camera. + * Creates a new Camera object to access the first back-facing camera on the + * device. If the device does not have a back-facing camera, this returns + * null. * @see #open(int) */ public static Camera open() { - return new Camera(CAMERA_ID_DEFAULT); + int numberOfCameras = getNumberOfCameras(); + CameraInfo cameraInfo = new CameraInfo(); + for (int i = 0; i < numberOfCameras; i++) { + getCameraInfo(i, cameraInfo); + if (cameraInfo.facing == CameraInfo.CAMERA_FACING_BACK) { + return new Camera(i); + } + } + return null; } Camera(int cameraId) { |