如何以编程方式为 android 启用前置摄像头而不是后置摄像头?

How to enable front camera instead of rear camera for android programmatically?

我用的是旧的 phone 它的后置摄像头损坏了,所以我想将我的默认摄像头设置为前置摄像头。是否可以每次打开相机应用程序时都打开前置摄像头?

Camera mCamera;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

   mCamera= Camera.open(1);
}

注:

0 对于 CAMERA_FACING_BACK

1 代表 CAMERA_FACING_FRONT

试试这个!

Camera.open(android.hardware.Camera.CameraInfo.CAMERA_FACING_FRONT);//avoid passing hardcode values

这可能会有所帮助。来源 URL:this

Button otherCamera = (Button) findViewById(R.id.OtherCamera);

otherCamera.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (inPreview) {
    camera.stopPreview();
}
//NB: if you don't release the current camera before switching, you app will crash
camera.release();

//swap the id of the camera to be used
if(currentCameraId == Camera.CameraInfo.CAMERA_FACING_BACK){
    currentCameraId = Camera.CameraInfo.CAMERA_FACING_FRONT;
}
else {
    currentCameraId = Camera.CameraInfo.CAMERA_FACING_BACK;
}
camera = Camera.open(currentCameraId);

try {

    camera.setPreviewDisplay(previewHolder);
} catch (IOException e) {
    e.printStackTrace();
}
camera.startPreview();
}