Capture de document
Capture de documents d'identité. Le SDK présente un cadre pour aider l'utilisateur à positionner le document ; après le positionnement, l'utilisateur clique sur le bouton pour capturer la photo.
Le SDK n'effectue aucune validation sur ce qui est capturé.
| Cadre | Description |
|---|---|
DocumentCameraTypes.CPF | Capture du CPF |
DocumentCameraTypes.CNH | Capture du CNH ouvert |
DocumentCameraTypes.CNH_FRENTE | Capture du recto du CNH |
DocumentCameraTypes.CNH_VERSO | Capture du verso du CNH |
DocumentCameraTypes.RG_FRENTE | Capture du recto du RG |
DocumentCameraTypes.RG_VERSO | Capture du verso du RG |
DocumentCameraTypes.OUTROS("descrição") | Cadre générique pour tout autre document |
Si vous devez capturer un document pour lequel il n'existe pas de cadre spécifique (par exemple, RNE), utilisez DocumentCameraTypes.OUTROS("description") — un cadre générique rectangulaire pouvant être utilisé pour guider n'importe quelle capture.
Pour la liste complète des types de documents pris en charge, consultez Référence API > Enums.
Étape 1 — Implémenter UnicoListener
UnicoListener gère les callbacks du cycle de vie du SDK. Implémentez les quatre méthodes obligatoires :
| Méthode | Quand elle est appelée |
|---|---|
onErrorUnico(error) | Une erreur s'est produite lors de l'opération du SDK |
onUserClosedCameraManually() | L'utilisateur a fermé la caméra manuellement |
onSystemClosedCameraTimeoutSession() | La limite de session de 40 secondes a été atteinte |
onSystemChangedTypeCameraTimeoutFaceInference() | Aucun visage détecté pendant 13 secondes — bascule vers la capture manuelle |
class _MyHomePageState extends State<MyHomePage> implements UnicoListener {
late UnicoCheckBuilder _unicoCheck;
@override
void onErrorUnico(UnicoError error) {}
@override
void onUserClosedCameraManually() {}
@override
void onSystemClosedCameraTimeoutSession() {}
@override
void onSystemChangedTypeCameraTimeoutFaceInference() {}
}
Les quatre méthodes listener ci-dessus doivent être créées dans votre projet (même sans aucune logique). Sinon, le projet ne compilera pas correctement.
Étape 2 — Implémenter les listeners de document
Ajoutez les callbacks de document à votre classe d'état :
| Méthode | Description |
|---|---|
onSuccessDocument(ResultCamera resultCamera) | Capture réussie — retourne ResultCamera avec base64 (aperçu) et encrypted (JWT pour l'API) |
onErrorDocument(UnicoError error) | Capture échouée — retourne un UnicoError avec le code et la description |
@override
void onSuccessDocument(ResultCamera resultCamera) { }
@override
void onErrorDocument(UnicoError error) { }
Étape 3 — Appeler openCameraDocument
La méthode openCameraDocument() est fournie via l'objet généré avec une instance de la classe UnicoCheck. Elle prend :
- Un fichier JSON avec les identifiants, généré lors de l'étape de configuration des identifiants ;
- Le type de document à capturer (enum
DocumentType) ; - Le listener configuré à l'étape 2.
Exemple avec le CNH ouvert :
_unicoCheck.build().openCameraDocument(
jsonFileName: androidJsonFileName,
documentType: DocumentType.CNH,
listener: this,
);
Pour la gestion complète du résultat, consultez Réception du résultat.