2014-06-16 155 views
0

我正在使用Android相机,并且我想从前置相机捕捉图像,即使相机的默认设置是后置相机。如何以编程方式更改相机默认设置

这可能吗?当我尝试从我的应用中捕捉图像时,后面的相机将会打开,因为我的默认设置是后置相机。

+0

帖子里添加摄像头 –

+0

'的代码,如果(!getPackageManager() \t .hasSystemFeature(PackageManager.FEATURE_CAMERA)){ \t Toast.makeText(这一点, “没有此设备上的相机”,Toast.LENGTH_LONG)' \t .show(); \t} else { \t \t this.camera = Camera.open(Camera.CameraInfo.CAMERA_FACING_FRONT); \t} – Zahidul

回答

0

Camera.open(cameraNo);前置摄像头1,后置摄像头0。

0

使用查找前置摄像头ID,用这个ID

private int findFrontFacingCamera() { 
    int cameraId = -1; 
    // Search for the front facing camera 
    int numberOfCameras = Camera.getNumberOfCameras(); 
    for (int i = 0; i < numberOfCameras; i++) { 
     CameraInfo info = new CameraInfo(); 
     Camera.getCameraInfo(i, info); 
     if (info.facing == CameraInfo.CAMERA_FACING_FRONT) { 
     Log.d(DEBUG_TAG, "Camera found"); 
     cameraId = i; 
     break; 
    } 
    } 
return cameraId; 

}

和开放式摄像机。

camera = Camera.open(cameraId); 

找到实例here

+0

它只能检查你使用哪台相机?没有改变默认设置。 – Zahidul

+0

camera = Camera.open(cameraId);将使用id cameraId打开相机。 – upv

0
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
intent.putExtra("android.intent.extras.CAMERA_FACING", 1); 
startActivity(intent); 

试试这个代码,如果你只是想开始从默认的摄像头应用程序的前置摄像头。

+0

嘿,我试过这段代码,它在三星设备上工作,但它不适用于其他设备 – BalajiG

相关问题