如何检查设备是否有前置和后置摄像头?

时间:2013-01-27 12:46:01

标签: android android-camera

我需要检测手机是否有前置摄像头,如果有,我需要计算百万像素。后置摄像头也是如此。

我知道如何获取“相机”对象的百万像素,但我不知道如何检查其他内容。

P.s。:如果你知道一种检查相机是否有闪光的方法,以及关于相机的其他很酷的统计数据,我也会很高兴

2 个答案:

答案 0 :(得分:4)

我总是试图创造助手 检查你是否有前置摄像头:

public static boolean checkCameraFront(Context context) {
    if(context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FRONT)) {
        return true;
    } else {
        return false;
    }
}

检查设备中是否有相机

public static boolean checkCameraRear() {
    int numCamera = Camera.getNumberOfCameras();
    if(numCamera > 0) {
        return true;
    } else {
        return false;
    }
}

答案 1 :(得分:2)

在API lvl 9中引入了

http://developer.android.com/reference/android/hardware/Camera.html#getNumberOfCameras()。这可以获得摄像机的数量

http://developer.android.com/reference/android/hardware/Camera.CameraInfo.html包含其面向方向的信息。

http://developer.android.com/reference/android/hardware/Camera.Parameters.html#getPictureSize()是百万像素,如果计算

如果没有闪存,

http://developer.android.com/reference/android/hardware/Camera.Parameters.html#getFlashMode()将返回null ..

很多其他参数也可以从相机对象中获取

http://developer.android.com/reference/android/hardware/Camera.html有使用相机的分步说明。如果您了解任何面向对象的语言,则可以按照这些说明进行操作。