gpt4 book ai didi

java - 未找到 Android Jetpack CameraX 方法 createSurfaceProvider()

转载 作者:行者123 更新时间:2023-12-03 11:17:37 25 4
gpt4 key购买 nike

在 android 文档中的教程中使用 CameraX 时遇到了问题。我找不到方法createSurfaceProvider()我正在使用这些库:camerax_version = "1.0.0-beta10" 代码 :

@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);

previewView = view.findViewById(R.id.previewView);

ListenableFuture<ProcessCameraProvider> cameraProviderFuture =
ProcessCameraProvider.getInstance(requireContext());

cameraProviderFuture.addListener(() -> {
try {
ProcessCameraProvider cameraProvider = cameraProviderFuture.get();
bindPreview(cameraProvider);

} catch (InterruptedException | ExecutionException e) {

}
}, ContextCompat.getMainExecutor(requireContext()));
}

private void bindPreview(ProcessCameraProvider cameraProvider) {
Preview preview = new Preview.Builder().build();

imageCapture = new ImageCapture.Builder()
.setCaptureMode(ImageCapture.CAPTURE_MODE_MINIMIZE_LATENCY)
.build();

CameraSelector cameraSelector = new CameraSelector.Builder()
.requireLensFacing(CameraSelector.LENS_FACING_BACK)
.build();

Camera camera = cameraProvider.bindToLifecycle(
((LifecycleOwner) this),
cameraSelector,
preview,
imageCapture);

preview.setSurfaceProvider(
previewView.createSurfaceProvider(camera.getCameraInfo()));

↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
}

最佳答案

刚刚关注了最新的tutorial并面临同样的问题。
但是,如果您只是调用预览的属性 surfaceProvider,一切都会正常工作。

val preview = Preview.Builder().build().also {it.setSurfaceProvider(viewFinder.surfaceProvider)}

关于java - 未找到 Android Jetpack CameraX 方法 createSurfaceProvider(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64229274/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com