Android examples for Camera:Open Camera
safe Camera Open
/**// w w w . j av a 2 s . c om * * Funf: Open Sensing Framework Copyright (C) 2010-2011 Nadav Aharony, Wei Pan, Alex Pentland. * Acknowledgments: Alan Gardner Contact: nadav@media.mit.edu * * Author(s): Pararth Shah (pararthshah717@gmail.com) * * This file is part of Funf. * * Funf is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser * General Public License as published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * Funf is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser * General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License along with Funf. If not, * see <http://www.gnu.org/licenses/>. * */ import android.annotation.SuppressLint; import android.content.Context; import android.content.res.Configuration; import android.hardware.Camera; import android.hardware.Camera.Parameters; import android.os.Build; import android.util.Log; import android.view.Surface; public class Main{ private static Camera mCamera; private static int mCameraType; private static int mCameraId; public static boolean safeCameraOpen(int selectedCamera) { if (mCamera != null) { Log.e(LogUtil.TAG, "CameraUtil: camera already open"); return false; } mCameraType = selectedCamera; mCamera = openSelectedCamera(mCameraType); if (mCamera == null) { Log.e(LogUtil.TAG, "CameraUtil: failed to access camera"); return false; } else { return true; } } @SuppressLint("NewApi") public static Camera openSelectedCamera(int type) { int cameraCount = 0; Camera cam = null; Camera.CameraInfo cameraInfo = new Camera.CameraInfo(); cameraCount = Camera.getNumberOfCameras(); for (int camIdx = 0; camIdx < cameraCount; camIdx++) { Camera.getCameraInfo(camIdx, cameraInfo); if (cameraInfo.facing == type) { try { cam = Camera.open(camIdx); mCameraId = camIdx; } catch (RuntimeException e) { Log.e(LogUtil.TAG, "CameraUtil: camera failed to open"); Log.e(LogUtil.TAG, e.getLocalizedMessage()); } } } return cam; } }