如何检查当前设备上是否存在前置摄像头?

时间:2013-02-26 19:05:54

标签: java android

我使用以下代码处理相机:

mMediaRecorderVideo=new MediaRecorder();
mCamera=Camera.open();      
mCamera.setDisplayOrientation(90);
mCamera.unlock();
mMediaRecorderVideo.setCamera(mCamera);
mMediaRecorderVideo.setAudioSource(MediaRecorder.AudioSource.DEFAULT);
mMediaRecorderVideo.setVideoSource(MediaRecorder.VideoSource.DEFAULT);
mMediaRecorderVideo.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));

所以,我使用设备的默认摄像头,但如果可能的话我需要设置前置摄像头。请告诉我,我该怎么检查呢?

1 个答案:

答案 0 :(得分:6)

int numCameras= Camera.getNumberOfCameras();
for(int i=0;i<numCameras;i++){
    Camera.CameraInfo info = new CameraInfo();
    Camera.getCameraInfo(i, info);
    if(CAMERA_FACING_FRONT == info.facing){
        return true;
    }
}
return false;

如果您想获得前置摄像头的编号,请返回i而不是找不到0。