> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/docs.facephi-pt-br/produtos/idv-suite/flujos-and-integraciones/configuracion-tecnica-del-cliente/sdk-mobile/android-sdk/componentes-modulos/captura-de-huellas.md).

# Captura de Impressão Digital

## Introdução <a href="#id-1-introduccion" id="id-1-introduccion"></a>

A Captura de Impressão Digital é realizada por meio do **Phingers Component**.

Este componente é responsável por capturar as impressões digitais do usuário (*impressões digitais*) e extrair os templates biométricos associados. Seus principais processos são:

* Gerenciamento interno da câmera e das permissões.
* Diferentes modos de extração: mão completa (quatro dedos sem o polegar), polegar ou dedos individuais.
* Detecção de vivacidade integrada.
* Assistência guiada durante o processo de captura.
* Geração de templates biométricos, imagens e métricas de qualidade.

***

## Dependência <a href="#id-2-dependencia" id="id-2-dependencia"></a>

A dependência específica do componente é:

```kotlin
implementation "com.facephi.androidsdk:phingers_tf_component:$version"
```

***

## Controladores disponíveis <a href="#id-3-controladores-disponibles" id="id-3-controladores-disponibles"></a>

| **Controlador**      | **Descrição**                                           |
| -------------------- | ------------------------------------------------------- |
| PhingersTFController | Controlador principal de captura de impressões digitais |

***

## Recepção de erros <a href="#id-61-recepcion-de-errores" id="id-61-recepcion-de-errores"></a>

* PHG\_ACTIVITY\_RESULT\_ERROR: O resultado da atividade está incorreto.
* PHG\_ACTIVITY\_RESULT\_MSG\_ERROR: A mensagem do resultado da atividade está incorreta.
* PHG\_APPLICATION\_CONTEXT\_ERROR: O contexto da aplicação é nulo.
* PHG\_CANCEL\_BY\_USER: O usuário cancelou o processo.
* PHG\_CANCEL\_LAUNCH: Cancelamento geral do SDK.
* PHG\_COMPONENT\_LICENSE\_ERROR: A licença do componente não está correta.
* PHG\_EMPTY\_LICENSE: A string de Licença está vazia.
* PHG\_FETCH\_DATA\_ERROR: Erro na coleta do resultado.
* FLOW\_ERROR: Erro no processo de flow.
* PHG\_INITIALIZATION\_ERROR: Erro de inicialização.
* PHG\_INTERNAL\_ERROR: Erro interno.
* PHG\_LOW\_QUALITY: Baixa qualidade da imagem.
* PHG\_MANAGER\_NOT\_INITIALIZED: Os managers estão nulos ou não foram inicializados.
* PHG\_NO\_DATA\_ERROR: Nenhum dado da captura foi recebido.
* PHG\_OPERATION\_NOT\_CREATED: Não há nenhuma operação em andamento.
* PHG\_PERMISSION\_DENIED: O usuário negou as permissões.
* PHG\_AUTOFOCUS\_FAILURE: Falha do autofocus.
* PHG\_CAMERA\_FAILURE: Falha da câmera.
* PHG\_CAPTURE\_FAILURE: Falha na captura.
* PHG\_CONFIGURATION\_FAILURE: Erro de configuração.
* PHG\_FINGERPRINT\_CAPTURE\_FAILURE: Falha na Captura de Impressão Digital.
* PHG\_FINGERPRINT\_TEMPLATE\_IO\_ERROR: Falha de IO do template.
* PHG\_LICENSING\_FAILURE: Erro de Licença.
* PHG\_LIVENESS\_FAILURE: Erro no teste de vida.
* PHG\_NO\_FINGERS\_DETECTED: Nenhuma impressão digital foi detectada.
* PHG\_UNIQUE\_USER\_ID\_NOT\_SPECIFIED: Usuário não especificado.
* PHG\_TIMEOUT: Timeout no processo.
* PHG\_FLOW\_VIDEO\_RECORDING\_ERROR: Erro na Gravação de Vídeo do flow.
* PHG\_FLOW\_TRACKING\_ERROR: Erro de Tracking no flow.
* PHG\_TRACKING\_STEP\_ERROR: Erro na etapa de Tracking.

***

## Configuração avançada <a href="#id-7-configuracion-avanzada" id="id-7-configuracion-avanzada"></a>

O controlador utiliza `PhingersConfigurationData` para ajustar o comportamento da captura. Além dos parâmetros próprios de seleção de dedos, qualidade, vivacidade ou telas de ajuda, podem ser informados campos opcionais para ativação e rastreabilidade do Widget:

* `licenseKey`: Chave de Licença passada ao Widget Phingers TF.
* `product`: Produto associado à ativação ou licenciamento.
* `operationId`: Identificador da operação enviado ao Widget.

A configuração também permite ativar uma Gravação de Vídeo local da captura:

* `videoRecordingEnabled`: Ativa a Gravação de Vídeo local durante a captura. Por padrão `false`.
* `videoRecordingDirectoryPath`: Diretório de destino opcional para o MP4 gerado.
* `videoRecordingFileName`: Nome de arquivo opcional.
* `videoRecordingQuality`: Qualidade `LOW`, `MEDIUM` ou `HIGH`. Por padrão `MEDIUM`.

## Recebimento do resultado correto - *data* <a href="#id-8-recepcion-del-resultado-correcto-data" id="id-8-recepcion-del-resultado-correcto-data"></a>

Em caso de sucesso, `data` contém um `PhingersResult` com as impressões digitais capturadas, imagens *Slap* quando aplicável e a média de vivacidade (`livenessScore`).

Quando a Gravação de Vídeo local está ativada e o Widget gera um arquivo MP4, `PhingersResult.recording` pode retornar:

* `path`: Caminho completo do arquivo gerado.
* `fileName`: Nome do arquivo de vídeo.
* `mimeType`: Tipo MIME do arquivo. Por padrão `video/mp4`.
* `sizeBytes`: Tamanho do arquivo em bytes, quando o Widget o informa.
* `durationMs`: Duração do vídeo em milissegundos, quando o Widget a informa.

***
