I need ONE function to check if front camera exist, and if so - show preview. I found a few links, but each of them talk about a specific device:
Can anyone provide a generic code for this? Or maybe a combined code that will work with all devices?
For APIs >=9, you can use the Camera
class: http://developer.android.com/reference/android/hardware/Camera.html to see if it has more than one camera, and query the CameraInfo
getNumberOfCameras
getCameraInfo
:
http://developer.android.com/reference/android/hardware/Camera.CameraInfo.html
Constants
int CAMERA_FACING_BACK The facing of the camera is opposite to that of the screen.
int CAMERA_FACING_FRONT The facing of the camera is the same as that of the screen.
For APIs >=5, an option is to read public List<Camera.Size> getSupportedPictureSizes ()
. Front facing cameras will usually have much lower max resolution than back cameras.
http://developer.android.com/reference/android/hardware/Camera.Parameters.html