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

FaceLiveness

Leva tecnologia de ponta de verificação facial ao vivo e autenticação por impressão digital para seus aplicativos Flutter, oferecendo uma forma simples e segura de autenticar usuários.

Confira a documentação do SDK em pub.dev para obter mais exemplos e informações adicionais:

Requisitos

Flutter
Versão

Flutter

1.20+

Dart

2.15+

Android
Versão

minSdk

21

compileSdk

34

iOS
Versão

Alvo do iOS

13.0

Xcode

15.4+

Swift

5.3.2+

Enviando seu app para a Play Store

Para publicar seu app na Google Play Store, você precisa preencher um formulário de segurança de dados. Como integramos com o SDK FingerPrintJS, você precisará fornecer as seguintes informações:

Pergunta no formulário de segurança de dados do Google Play Console
Resposta

Seu app coleta ou compartilha algum dos tipos de dados do usuário exigidos?

Sim.

Que tipo de dado é coletado?

Identificadores do dispositivo ou outros identificadores.

Esse dado é coletado, compartilhado ou ambos?

Coletado.

Esse dado é processado de forma efêmera?

Sim.

Por que esses dados do usuário são coletados?

Prevenção a fraudes, segurança e conformidade.

Permissões em tempo de execução

Android

Permissão
Motivo
Obrigatório

CÂMERA

Captura da selfie em políticas com verificação facial

Sim

iOS

Permissão
Motivo
Obrigatório

Privacidade - Descrição de Uso da Câmera

Captura da selfie em políticas de verificação facial ao vivo

Sim

Configurações da plataforma

Android

Se a sua versão do Gradle for anterior à 7, adicione estas linhas ao seu build.gradle.

Se a sua versão do Gradle for 7 ou mais recente, adicione estas linhas ao seu settings.gradle.

Adicione suporte ao Java 8 ao seu build.gradle arquivo. Ignore isto se o Java 8 estiver ativado.

iOS

No info.plist arquivo, adicione as permissões abaixo:

Uso

Parâmetro
Obrigatório

mobileToken: Token de uso associado à sua conta CAF

Sim

personId: Identificador do usuário que realizará a verificação de vivacidade facial. Recomenda-se usar o documento de identificação do usuário neste campo, como o CPF (documento de identificação brasileiro), mas pode ser qualquer outro valor.

Sim

Opções do FaceLiveness

Opção
Obrigatório
Valor Padrão
Android
iOS

.setStage(String stage)

Usado para redirecionar o SDK para o ambiente desejado na API CAF.

Não

CafStage.prod

.setFilter(String filter)

Define o filtro de câmera aplicado à pré-visualização da câmera.

Não

CameraFilter.lineDrawing

.setEnableScreenshots(bool enable)

Usado para habilitar capturas de tela durante a varredura do SDK.

Não

false

.setEnableLoadingScreen(bool enable)

Usado para determinar se a tela de carregamento do SDK será implementada no lado do cliente ou se será usada a tela padrão. Se definido como 'true', a tela de carregamento será uma tela padrão do SDK. Se 'false', você deve fornecer um indicador de progresso indeterminado.

Não

false

.setImageUrlExpirationTime(String time)

Usado para alterar o tempo padrão de expiração da URL da imagem para recuperar a captura facial.

Não

30 min

.setReverseProxySettings(ReverseProxySettings settings)

Usado para configurar as definições de proxy reverso para executar os serviços FaceLiveness e/ou Authentication.

Não

ReverseProxySettings

As definições de proxy reverso que serão usadas para executar os serviços FaceLiveness e Authentication. Esses dois serviços podem operar independentemente um do outro, FaceLiveness e Authentication.

Proxy reverso do FaceLiveness:

Parâmetro
Descrição

String? faceLivenessBaseUrl

A URL base do proxy reverso que será usada para executar o serviço FaceLiveness. O protocolo da URL deve ser WSS.

List<String>? certificates

Uma lista de certificados que será usada para autenticar o proxy reverso para executar o serviço FaceLiveness. Os certificados devem ser hash SHA-256 codificado em base64 do Subject Public Key Info do certificado.

Proxy reverso de autenticação:

Parâmetro
Descrição

String? authenticationBaseUrl

A URL base do proxy reverso que será usada para executar o serviço Authentication. O protocolo da URL deve ser HTTPS.

Enumerações

CafStage

Descrição
Valores

Usado para definir o estágio do SDK em .setStage(String stage) opção.

CafStage.prod, CafStage.beta

CameraFilter

Descrição
Valores

Usado para definir o filtro de câmera do SDK em .setFilter(String filter) opção.

CameraFilter.natural, CameraFilter.lineDrawing

Time

Descrição
Valores

Usado para definir o tempo de expiração da URL da imagem em .setImageUrlExpirationTime(String time) opção.

Time.threeHours, Time.thirtyDays

Streaming de eventos do FaceLiveness

FaceLivenessEventConnecting

O SDK está carregando; você pode usar o retorno deste evento para definir uma ação no seu app, por exemplo, um indicador de carregamento.

FaceLivenessEventConnected

O SDK não está mais carregando; você pode usar o retorno deste evento para definir uma ação no seu app, por exemplo, você pode parar o indicador de carregamento.

FaceLivenessEventClosed

A execução foi cancelada pelo usuário.

FaceLivenessEventSuccess

Evento
Descrição

requestId

Identificador da solicitação.

isAlive

Validação de uma pessoa viva, identifica se o usuário passou com sucesso ou não.

token

Token da solicitação.

userId

Identificador do usuário fornecido para a solicitação.

imageUrl

Link temporário para a imagem, gerado pela nossa API.

personId

Identificador do usuário fornecido para o SDK.

sdkVersion

Versão do Sdk em uso.

iat

Expiração do token.

O isAlive parâmetro é muito importante, com base nessa validação, o usuário pode ser orientado a continuar o fluxo ou não. Em caso de isAlive: true, ele poderá continuar com a jornada. Se isAlive: false, este usuário não é válido e deve ser impedido de continuar sua jornada.

FaceLivenessEventFailure

Parâmetro
Descrição

String errorType

Tipo de erro retornado pelo SDK

String errorDescription

Mensagem de descrição do erro retornada pelo SDK.

Casos de tipo de erro
Descrição

dispositivoSemSuporte

Esse erro pode ocorrer se o hardware ou software do dispositivo não atender aos requisitos mínimos para a funcionalidade de reconhecimento facial.

permissãoDaCâmera

Esse erro normalmente ocorre quando o usuário nega acesso à câmera ou se o app não tiver as permissões necessárias.

exceçãoDeRede

Esse erro pode ocorrer devido a vários problemas de rede, como falta de conexão com a internet, timeouts do servidor ou congestionamento da rede.

exceçãoDeToken

Esse erro pode ocorrer se o token de autenticação fornecido for inválido, estiver expirado ou não tiver as permissões necessárias para executar tarefas de reconhecimento facial.

exceçãoDoServidor

Esse erro normalmente é retornado quando há um problema com o servidor ao processar a solicitação de reconhecimento facial. Isso pode incluir erros no lado do servidor, configurações incorretas ou interrupções do serviço.

Atualizado