You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CameraX设置LENS_FOCUS_DISTANCE在三星S22 Ultra特定场景失效

CameraX设置LENS_FOCUS_DISTANCE在三星S22 Ultra特定场景失效

问题现象

基于CameraX开发的应用中,通过Camera2CameraControl设置CaptureRequest.LENS_FOCUS_DISTANCE为0.0f(无穷远对焦)在多数设备和场景下正常,但在三星S22 Ultra的特定操作后失效:当先在系统相机的「专业」模式中自定义过焦距,再打开自定义相机应用时,应用设置的无穷远对焦不生效,镜头焦距依然保留系统相机的自定义设置。

实现代码

Camera2CameraControl.from(camera.cameraControl).captureRequestOptions = CaptureRequestOptions.Builder()
                    .apply {
                        setCaptureRequestOption(CaptureRequest.CONTROL_AF_MODE, CameraMetadata.CONTROL_AF_MODE_OFF)
                        setCaptureRequestOption(CaptureRequest.CONTROL_AE_MODE, CameraMetadata.CONTROL_AE_MODE_ON)

                        // 将镜头焦距固定为无穷远,实现远处对焦(避免近距离对焦)
                        setCaptureRequestOption(CaptureRequest.LENS_FOCUS_DISTANCE, 0.0f)
                    }
                    .build()

复现步骤

  • 打开三星S22 Ultra的系统相机,切换到「专业」模式,手动调整焦距;
  • 关闭系统相机,打开基于CameraX的自定义应用,进入相机界面;
  • 检查镜头焦距,发现未被设置为0.0f,仍保持系统相机的最后设置值。

疑问

是否是One UI的三星上层框架对相机参数的持久化或优先级处理导致了这个问题?

内容的提问来源于stack exchange,提问作者Manon Hardy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 22:09:24