代码如下:
if (mCamera == null) { mCameraId = findFrontFacingCamera(); mCamera = Camera.open(mCameraId); Camera.Parameters parameters = mCamera.getParameters(); parameters.setPictureSize(CAMERA_PREVIEW_WIDTH_ORI, CAMERA_PREVIEW_HEIGHT_ORI); parameters.setPreviewSize(CAMERA_PREVIEW_WIDTH_ORI, CAMERA_PREVIEW_HEIGHT_ORI); parameters.setRotation(90); mCamera.setParameters(parameters); mPreview.refreshCamera(mCamera); }
使用设备摄像头时,报错:Caused by: java.lang.RuntimeException: setParameters failed
原因是,设置的摄像头分辨率与设备实际支持的分辨率不相匹配
解决方法:此处代码设置为摄像头支持的分辨率
parameters.setPictureSize(CAMERA_PREVIEW_WIDTH_ORI, CAMERA_PREVIEW_HEIGHT_ORI); parameters.setPreviewSize(CAMERA_PREVIEW_WIDTH_ORI, CAMERA_PREVIEW_HEIGHT_ORI);