---
title: 文件采集
canonical: https://developer.unico.io/zh-CN/dual-api/developer/sdks-and-tools/android-sdk/document-capture/
locale: zh-CN
generated_by: markdown-export
---

采集身份证件。支持 **RG**（仅正面或正反面）、**CNH**（正反面）以及 **CPF**，需结合[文件采集与复用](/capabilities/document-reuse-and-capture)能力使用。

有关支持的文件类型及其枚举值的完整列表，请参阅 [API 参考 > 枚举](/developers/sdks-and-tools/android/api-reference/enums)。

## 开始文件采集

****步骤 2** — 实现 `iAcessoBioDocument`**

`iAcessoBioDocument` 处理文件采集结果的回调：

  | 方法 | 描述 |
  |---|---|
  | `onSuccessDocument(result)` | 采集成功 — 返回包含 `base64`（预览）和 `encrypted`（API 使用的 JWT）的 `ResultCamera` |
  | `onErrorDocument(errorBio)` | 采集失败 — 返回包含错误码和描述的 `ErrorBio` |

  ### Kotlin

    ```kotlin
    val documentListener = object : iAcessoBioDocument {
      override fun onSuccessDocument(result: ResultCamera?) { }
      override fun onErrorDocument(errorBio: ErrorBio?) { }
    }
    ```

### Java

    ```java
    iAcessoBioDocument documentListener = new iAcessoBioDocument() {
      @Override
      public void onSuccessDocument(ResultCamera result) { }

      @Override
      public void onErrorDocument(ErrorBio errorBio) { }
    };
    ```

****步骤 3** — 调用 `prepareDocumentCamera`**

初始化 `acessoBioBuilder` 并实现两个监听器后，调用 `prepareDocumentCamera`，传入 SDK 配置（在[初始化](/developers/sdks-and-tools/android/initialization)中创建的 `UnicoConfig`）、所需的 `DocumentType` 以及 `DocumentCameraListener`：

  - `onCameraReady` — 摄像头已就绪；调用 `open` 并传入步骤 2 中的 `documentListener`。
  - `onCameraFailed` — 摄像头准备失败；处理错误消息。

  ### Kotlin

    ```kotlin
    acessoBioBuilder
      .build()
      .prepareDocumentCamera(UnicoConfig(), DocumentType.CNH, object : DocumentCameraListener {
        override fun onCameraReady(cameraOpener: UnicoCheckCameraOpener.Document?) {
          cameraOpener?.open(documentListener)
        }
        override fun onCameraFailed(message: String?) { }
      })
    ```

### Java

    ```java
    acessoBioBuilder
      .build()
      .prepareDocumentCamera(new UnicoConfig(), DocumentType.CNH, new DocumentCameraListener() {
        @Override
        public void onCameraReady(UnicoCheckCameraOpener.Document cameraOpener) {
          cameraOpener.open(documentListener);
        }

        @Override
        public void onCameraFailed(String message) { }
      });
    ```

有关完整的结果处理，请参阅[接收结果](/developers/sdks-and-tools/android/capture-flow/receiving-the-result)。