private void OpenCamera()
{
try
{
numberOfCameras = Camera.NumberOfCameras;
int? rearFacingCameraId = null;
// Find the ID of the default camera
Camera.CameraInfo cameraInfo = new Camera.CameraInfo();
for (int i = 0; i < numberOfCameras; i++)
{
Camera.GetCameraInfo(i, cameraInfo);
if (cameraInfo.Facing == CameraFacing.Back)
{
rearFacingCameraId = i;
}
}
if (rearFacingCameraId.HasValue)
{
camera = Camera.Open(rearFacingCameraId.Value);
UpdateCameraDisplayOrientation();
if (cameraPreview != null)
{
cameraPreview.PreviewCamera = camera;
}
}
}
catch (CameraAccessException ex)
{
}
catch (NullPointerException)
{
}
catch (System.Exception ex)
{
}
}