CameraX 正在使用广角相机

xat*_*okk 7 camera android android-camera2

我已将 CameraX 设置为使用后置摄像头requireLensFacing(CameraSelector.LENS_FACING_BACK),但在具有多个摄像头的手机上进行测试时,它使用的是广角摄像头。我怎样才能让它改用普通相机?

https://developer.android.com/training/camerax

val cameraSelector = CameraSelector.Builder()
    .requireLensFacing(CameraSelector.LENS_FACING_BACK)
    .build()

val preview = Preview.Builder()
    .setTargetResolution(Size(binding.preview.width, binding.preview.height))
    .build()

val imageAnalysis = ImageAnalysis.Builder()
    .setTargetResolution(Size(binding.preview.width, binding.preview.height))
    .setBackpressureStrategy(ImageAnalysis.STRATEGY_KEEP_ONLY_LATEST)
    .build()
    .also {
        it.setAnalyzer(cameraExecutor, analyzer)
    }

cameraProvider.unbindAll()

cameraProvider.bindToLifecycle(viewLifecycleOwner, cameraSelector, preview, imageAnalysis).also { camera ->
    camera.cameraControl.setZoomRatio(2F)
    preview.setSurfaceProvider(binding.preview.createSurfaceProvider(camera.cameraInfo))
}
Run Code Online (Sandbox Code Playgroud)