Код: Выделить всё
Preview preview = new Preview.Builder()
.build();
CameraSelector cameraSelector = new CameraSelector.Builder()
.requireLensFacing(CameraSelector.LENS_FACING_BACK)
.build();
preview.setSurfaceProvider(previewView.getSurfaceProvider());
ImageCapture imageCapture =
new ImageCapture.Builder()
.setCaptureMode(ImageCapture.CAPTURE_MODE_MAXIMIZE_QUALITY)
.setTargetResolution(new Size(1280, 720))
.setTargetRotation(Surface.ROTATION_0)
.build();
mActivityCaptureImagesBinding.imbCapture.setOnClickListener(v -> {
imageCapture.takePicture(Runnable::run, new ImageCapture.OnImageCapturedCallback() {
@Override
public void onCaptureSuccess(ImageProxy imageProxy) {
bmpCaptured = mActivityCaptureImagesBinding.captureImageCameraPreview.getBitmap();
showHidePreviewScreen();
}
@Override
public void onError(ImageCaptureException exception) {
// Handle the exception however you'd like
Log.e(TAG_IMAGES_CAPTURE, "Exception while taking image : " + exception.getMessage());
}
});
});
// Attach use cases to the camera with the same lifecycle owner
camera = cameraProvider.bindToLifecycle(
(LifecycleOwner) this,
cameraSelector,
preview, imageCapture);
}
private void showHidePreviewScreen() {
try {
runOnUiThread(() -> {
mActivityCaptureImagesBinding.imvPreview.setImageBitmap(bmpCaptured);
mActivityCaptureImagesBinding.captureImageCameraPreview.setVisibility(View.GONE);
mActivityCaptureImagesBinding.imvPreview.setVisibility(View.VISIBLE);
});
} catch (Exception e) {
Log.e(TAG_IMAGES_CAPTURE, "Exception while showHidePreviewScreen : " + e.getMessage());
}
}
Вот вы можете увидеть образец изображения.

Подробнее здесь: https://stackoverflow.com/questions/793 ... sue-on-top
Мобильная версия