【发布时间】:2019-05-14 18:01:17
【问题描述】:
我目前正在使用android-Camera2Basic,此示例旨在使用后置摄像头拍照,并且效果很好,但是当我将line 更改为此时:
if (facing != null && facing != CameraCharacteristics.LENS_FACING_FRONT)
预览按预期显示正面摄像头,但单击图片按钮时未拍照。
为什么会发生这种情况我需要更改其他内容吗?
【问题讨论】:
我目前正在使用android-Camera2Basic,此示例旨在使用后置摄像头拍照,并且效果很好,但是当我将line 更改为此时:
if (facing != null && facing != CameraCharacteristics.LENS_FACING_FRONT)
预览按预期显示正面摄像头,但单击图片按钮时未拍照。
为什么会发生这种情况我需要更改其他内容吗?
【问题讨论】:
通过替换lockFocus()中的这段代码解决了这个问题
mCaptureSession.capture(mPreviewRequestBuilder.build(),mCaptureCallback,
mBackgroundHandler);
你应该调用 captureStillPicture();
【讨论】:
拍照前检查当前相机ID
if (cameraId.equals(CAMERA_FRONT, false)) {
captureStillPicture()
} else if (cameraId.equals(CAMERA_BACK, false)) {
lockFocus()
}
前面的即叫这个captureStillPicture()
否则叫这个lockFocus()
这是因为某些手机的前置摄像头出现对焦问题
【讨论】: