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

采集身份证件。SDK 会呈现一个框架，辅助用户定位证件；定位完成后，用户点击按钮拍照。

:::warning[无内容验证]
SDK 不对正在采集的内容进行任何类型的验证。
:::

## 可用的文件框架

| 框架 | 描述 |
|---|---|
| `DocumentCameraTypes.CPF` | 采集 CPF |
| `DocumentCameraTypes.CNH` | 采集已展开的 CNH |
| `DocumentCameraTypes.CNH_FRENTE` | 采集 CNH 正面 |
| `DocumentCameraTypes.CNH_VERSO` | 采集 CNH 背面 |
| `DocumentCameraTypes.RG_FRENTE` | 采集 RG 正面 |
| `DocumentCameraTypes.RG_VERSO` | 采集 RG 背面 |
| `DocumentCameraTypes.OUTROS("descrição")` | 适用于任何其他文件的通用框架 |

:::tip[通用框架]
如果需要采集没有专用框架的文件（例如 RNE），请使用 `DocumentCameraTypes.OUTROS("description")` — 这是一个通用的矩形框架，可用于引导任何采集操作。
:::

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

## 开始文件采集

****步骤 2** — 实现文件监听器**

将文件回调添加到您的状态类：

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

  ```dart
  @override
  void onSuccessDocument(ResultCamera resultCamera) { }

  @override
  void onErrorDocument(UnicoError error) { }
  ```

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

`openCameraDocument()` 方法通过 `UnicoCheck` 类实例生成的对象提供。它需要以下参数：

  - 包含凭据的 JSON 文件，在[凭据设置步骤](/developers/sdks-and-tools/flutter/installation/specific-setup)中生成；
  - 要采集的文件类型（`DocumentType` 枚举）；
  - 步骤 2 中配置的监听器。

  以采集已展开的 CNH 为例：

  ```dart
  _unicoCheck.build().openCameraDocument(
    jsonFileName: androidJsonFileName,
    documentType: DocumentType.CNH,
    listener: this,
  );
  ```

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