camera打开失败:
1.没有对应摄像头
这个需要检查底层驱动有没有添加对应的camera,如果没有添加是找不到camera ID的,
camera id找不到自然是打不开摄像头的。
例如可能只有两个摄像头,下标从0开始,Camera.open(2)打开的是第3个摄像头就会出问题
private void openCamera(int cameraFacing) throws RuntimeException {
releaseCamera();
Camera.CameraInfo info = new Camera.CameraInfo();
for (int i = 0; i < Camera.getNumberOfCameras(); i++) {
Camera.getCameraInfo(i, info);
if (info.facing == cameraFacing) {
mCamera = Camera.open(i); // 打开对应的摄像头,获取到camera实例
mIsOpened = true;
return;
}
}
}
这个步骤排查过