Android api 21及以上版本中没有类似于onAutoFocused()的回调

Android api 21及以上版本中没有类似于onAutoFocused()的回调,android,camera2,Android,Camera2,如何使用camera2 api在android中自动拍摄焦点照片?api 21及以上版本中没有类似于onAutoFocused()的回调。您必须手动触发AF和AE。 标准管道为: 在用于预览的CaptureRequest.Builder中,将CONTROL\u AF\u TRIGGER设置为CONTROL\u AF\u TRIGGER\u START,并通过CameraCaptureSession capture方法提交给会话。调用capture后,请记住在CaptureRequest.Buil

如何使用camera2 api在android中自动拍摄焦点照片?api 21及以上版本中没有类似于onAutoFocused()的回调。

您必须手动触发AF和AE。 标准管道为:

  • 在用于预览的
    CaptureRequest.Builder
    中,将
    CONTROL\u AF\u TRIGGER
    设置为
    CONTROL\u AF\u TRIGGER\u START
    ,并通过
    CameraCaptureSession capture
    方法提交给会话。调用capture后,请记住在CaptureRequest.Builder中将
    CONTROL\u AF\u TRIGGER
    重置为
    CONTROL\u AF\u TRIGGER\u IDLE
    ,以进行预览
  • 等待AF完成检查预览回调中TotalCaptureResult的
    CaptureResult.CONTROL\u AF\u状态是否为
    CONTROL\u AF\u STATE\u FOCUSED\u LOCKED | CONTROL\u AF\u STATE\u NOT\u FOCUSED\u LOCKED | CONTROL\u AF\u STATE\u PASSIVE\u FOCUSED | CONTROL\u AF\u STATE\u PASSIVE\u UNFOCUSED
  • AF完成后,触发
    CONTROL\u AE\u PRECAPTURE\u trigger
    CONTROL\u AE\u PRECAPTURE\u trigger\u START
    中的
    CaptureRequest.Builder
    中的AE设置,用于预览并通过
    CameraCaptureSession capture
    方法提交到会话。调用capture后,请记住在CaptureRequest.Builder中将
    控制预处理预处理触发器
    重置为
    控制预处理预处理触发器
    以进行预览
  • 等待AE完成检查预览回调中TotalCaptureResult的
    CONTROL\u AE\u状态是否为
    CONTROL\u AE\u STATE\u convergend | CONTROL\u AE\u STATE\u FLASH\u REQUIRED | CONTROL\u AE\u STATE\u LOCKED
  • 现在你可以拍照了,焦点集中,曝光良好

  • 我也经历过,可以同时触发AF e AE(步骤1-3)并同时等待它们(步骤2-4)。

    请提供一些代码以澄清