I recently noticed that the Camera API is deprecated and I found the new API called Camera2.
I have read the documentation but I don't really understand it.
So my question is: how do I preview the front camera with the new camera api?
Just a preview, not recording.
I want to use this new API because in the future I'm guessing the current Camera API will be replaced and stop working.
So I want to be prepared and just sit and watch while everyone panics. XD
First of all, find out the id of your front camera (if it has one of course)
CameraManager manager = (CameraManager) activity.getSystemService(Context.CAMERA_SERVICE);
try {
return manager.getCameraIdList();
} catch (CameraAccessException e) {
return null;
}
Then find the faceCamera like this:
CameraCharacteristics cameraCharacteristics = manager.getCameraCharacteristics(cameraId);
if (cameraCharacteristics == null)
throw new NullPointerException("No camera with id " + cameraId);
return cameraCharacteristics.get(CameraCharacteristics.LENS_FACING) == CameraCharacteristics.LENS_FACING_FRONT;
Lastly, you have to set the camera with that id:
CameraManager manager = (CameraManager) activity.getSystemService(Context.CAMERA_SERVICE);
try {
characteristics = manager.getCameraCharacteristics(mCameraId);
} catch (CameraAccessException e) {
e.printStackTrace();
}
Note, these are just tips on how to do what you wanna do. For details on how to start a preview and more, refer to: http://developer.android.com/samples/Camera2Basic/index.html