我目前正在使用android-Camera2Basic,此示例旨在使用后置摄像头拍照,并且它工作正常,但当我将此line更改为此时:< / p>
if (facing != null && facing != CameraCharacteristics.LENS_FACING_FRONT)
预览显示了所面对的相机,但是当我点击图片按钮时它不会拍照。
为什么发生这种情况我需要改变别的东西?
答案 0 :(得分:7)
通过在lockFocus()
中替换此代码解决了这个问题mCaptureSession.capture(mPreviewRequestBuilder.build(),mCaptureCallback,
mBackgroundHandler);
相反,你应该调用captureStillPicture();
答案 1 :(得分:0)
在拍照之前检查当前的相机ID
if (cameraId.equals(CAMERA_FRONT, false)) {
captureStillPicture()
} else if (cameraId.equals(CAMERA_BACK, false)) {
lockFocus()
}
ie for Front将此称为captureStillPicture()
否则将其称为lockFocus()
之所以会发生这种情况,是因为某些带有前置摄像头的手机出现对焦问题