For the complete documentation index, see llms.txt. This page is also available as Markdown.

Tratamento de Falhas

Referência para o tratamento de falhas do Face Liveness no Flutter. Aprenda sobre os tipos de CerttaLivenessFailure, valores de causa e como mapear falhas para orientações claras ao usuário.

Quando uma verificação de vivacidade falha, o SDK emite CerttaLivenessEvent.failed com um CerttaLivenessFailure objeto. Este objeto contém um causa parâmetro (um código estável para lógica de mapeamento) e, para falhas de reconhecimento, um description campo com texto exibido ao usuário.

Entender e lidar com esses campos é fundamental para fornecer feedback claro e acionável, para que os usuários possam corrigir o problema e tentar novamente.

Os modelos de falha

Tanto as falhas de captura quanto as de reconhecimento compartilham o mesmo CerttaLivenessFailure tipo. Use type para distingui-las:

type

Significado

ImageCaptureFailure

A captura de imagem falhou. Nenhuma imagem assinada (response) está disponível.

FaceRecognitionFailure

A captura foi bem-sucedida, mas o reconhecimento ou a autenticação falharam. response contém o payload assinado. description fornece uma mensagem legível por humanos.

Para FaceRecognitionFailure, causa é normalizado para maiúsculas pelo plugin do Flutter. Use causa para lógica condicional e description (ou sua própria versão localizada) para mensagens exibidas aos usuários finais.

Ao usar causa e description

A causa o parâmetro retorna uma string constante estável (por exemplo "TOO_DARK" ou "FACE_TOO_FAR"). Não exiba causa diretamente aos usuários finais.

Para FaceRecognitionFailure, prefira description como fallback quando você não mantiver um mapeamento personalizado. Caso contrário, mapeie causa para uma mensagem localizada e amigável ao usuário na sua interface.

Causas de falha disponíveis

Ao usar o iProov provider, se a captura for bem-sucedida, mas o mecanismo falhar ao autenticar ou processar o rosto, o SDK retorna um FaceRecognitionFailure.

Possíveis causa valores:

Causa
Descrição

UNKNOWN

Falha genérica

TOO_MUCH_MOVEMENT

Movimento excessivo da cabeça

TOO_BRIGHT

Iluminação excessiva

TOO_DARK

Condições de pouca luz

MISALIGNED_FACE

Falha no alinhamento do rosto

FACE_TOO_FAR

Rosto muito distante

FACE_TOO_CLOSE

Rosto muito próximo

SUNGLASSES

Óculos que cobrem os olhos

OBSCURED_FACE

Obstrução parcial do rosto

EYES_CLOSED

Olhos fechados durante a captura

MULTIPLE_FACES

Vários rostos detectados

BACKGROUND_ISSUE

Fundo inadequado

DEVICE_ISSUE

Dispositivo incompatível

EYEWEAR

Óculos detectados

FACE_NOT_FOUND

Falha na detecção do rosto

FRAMES_BLURRY

Quadros borrados detectados

MOTION_ISSUE

Erro de movimento do dispositivo

LIGHTING_ISSUES

Condições de iluminação ruins

REJECTED

Transação rejeitada

SYSTEM_ERROR

Erro interno do sistema

TIMEOUT

Tempo limite da sessão

USER_NOT_FOUND

Falha na busca do usuário

DEVICE_RESTART

Erro de estado do dispositivo

PROCESSING_FAULT

Erro de processamento

A documentação anterior do CafSdk também indicava quais causas se aplicam aos provedores GPA vs LA. Considere a tabela acima como o conjunto completo de identificadores que você pode receber; mapeie valores desconhecidos para uma mensagem genérica de nova tentativa.

Exemplo de implementação

Atualizado