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

Tratando Falhas

Referência para o tratamento de falhas do Face Liveness no Android. Saiba mais sobre os tipos de LivenessFailure, valores de causa, erros específicos do provedor e como mapear falhas para orientar o usuário de forma clara.

Quando uma verificação de vivacidade falha, o SDK retorna um LivenessFailure objeto. Este objeto contém um causa parâmetro, que é um identificador de string que informa exatamente por que o processo não teve sucesso.

Compreender e tratar o causa parâmetro é fundamental para fornecer um feedback claro e acionável aos seus usuários, para que eles possam corrigir o problema e tentar novamente.

Os Modelos de Falha

O SDK usa uma hierarquia de classes seladas para categorizar falhas. Tanto as falhas no nível de captura quanto as falhas no nível de reconhecimento herdam da classe base LivenessFailure para que você possa sempre acessar a causa string.

LivenessFailure.kt
public sealed class LivenessFailure(public open val cause: String) {
    
    // Disparado quando o processo de captura de imagem falha. Nenhuma imagem (resposta) disponível
    public data class ImageCaptureFailure(override val cause: String) : LivenessFailure(cause)
    
    // Disparado quando falha ao reconhecer ou autenticar o rosto.
    public data class FaceRecognitionFailure(
        public val response: String, 
        override val cause: String
    ) : LivenessFailure(cause)
}

Usando o causa Parâmetro

O causa parâmetro retorna uma string de constante bruta (por exemplo, "TOO_DARK" ou "FACE_TOO_FAR").

Prática recomendada: não exiba essas strings brutas diretamente aos seus usuários finais. Em vez disso, interceptar a causa string e mapeá-la para uma mensagem amigável e localizada na interface do seu app, orientando-os sobre como corrigir o problema.

Causas de Falha Disponíveis

Ao usar o Iproov provedor, se a captura de imagem for bem-sucedida, mas o mecanismo falhar ao autenticar ou processar o rosto, o SDK retorna uma FaceRecognitionFailure.

Abaixo está a lista dos possíveis causa valores retornados especificamente durante esta fase:

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 obstruem os olhos

OBSCURED_FACE

Obstrução parcial do rosto

EYES_CLOSED

Olhos fechados durante a captura

MULTIPLE_FACES

Vários rostos detectados

BACKGROUND_ISSUE

Plano de 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

Exemplo de implementação

Aqui está um exemplo de como você pode lidar com um LivenessFailure e mapear o causa parâmetro para uma orientação útil ao usuário:

Atualizado