> 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-nfc.md).

# Captura de NFC

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

A captura facial é realizada com o ***Componente NFC***.

Este componente é responsável por realizar a leitura do NFC de documentos de identidade e passaportes. Seus principais processos são:

* Gerenciamento interno do sensor de NFC.
* Gerenciamento de permissões.
* Análise de documento.
* Análise do progresso.
* Assistente nos processos de leitura.
* Retorno de todas as informações possíveis a serem lidas
* Retorno de imagens quando estiverem disponíveis para leitura

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

A dependência específica do componente é:

```kts
implementation "com.facephi.androidsdk:nfc_component:$sdk_nfc_component_version"{
      exclude group : "org.bouncycastle", module : "bcprov-jdk15on"
      exclude group : "org.bouncycastle", module : "jetified-bcprov-jdk15on-1.68"
  }
```

Além disso, será necessário adicionar no Gradle:

```kts
android {
  ...
 packaging {
      resources {
          pickFirsts.add("META-INF/versions/9/OSGI-INF/MANIFEST.MF")
      }
  }
}
```

## Controladores disponíveis

| **Controlador** | **Descrição**                        |
| --------------- | ------------------------------------ |
| FNFCController  | Controlador principal de leitura NFC |

## Recepção de erros <a href="#id-6-recepcion-del-resultado" id="id-6-recepcion-del-resultado"></a>

Os erros serão retornados como um objeto 'NfcError'.

<details>

<summary>Lista de erros de captura de NFC:</summary>

* NFC\_APPLICATION\_CONTEXT\_ERROR: O contexto de aplicação necessário é nulo.
* NFC\_CANCEL\_BY\_USER: O usuário cancelou o processo.
* NFC\_CANCEL\_LAUNCH: Foi feito um cancelamento geral do SDK.
* NFC\_COMPONENT\_LICENSE\_ERROR: A licença do componente não está correta.
* NFC\_EMPTY\_LICENSE: A String de licença está vazia.
* NFC\_EXTRACT\_DATA\_ERROR: Erro nos dados extraídos.
* NFC\_FETCH\_DATA\_ERROR: Erro na coleta do resultado.
* NFC\_FLOW\_ERROR: Erro no processo de flow.
* NFC\_INITIALIZATION\_ERROR: Erro de inicialização.
* NFC\_LAST\_COMMAND\_EXPECTED: Erro no comando de finalização
* NFC\_MANAGER\_NOT\_INITIALIZED: Os managers são nulos.
* NFC\_NO\_DATA\_ERROR: Os dados de entrada são nulos ou não foi recebido resultado da leitura.
* NFC\_ERROR: Erro geral
* NFC\_ERROR\_DATA: Erro nos dados de entrada
* NFC\_ERROR\_DISABLED: NFC desabilitado
* NFC\_ERROR\_ILLEGAL\_ARGUMENT: NFC com uma tag incorreta
* NFC\_ERROR\_IO: Erro de entrada/saída
* NFC\_ERROR\_NOT\_SUPPORTED: NFC não suportado
* NFC\_ERROR\_TAG\_LOST: Conexão perdida
* NFC\_OPERATION\_NOT\_CREATED: Não há nenhuma operação em andamento.
* NFC\_TIMEOUT: Timeout no processo.

</details>

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

Em caso de sucesso, `data` contém um `NfcResult` com os dados lidos do documento, imagens disponíveis, dados de segurança e validações criptográficas.

Dentro de `NfcResult.nfcValidations`, o resultado inclui:

* `chipAuthenticationSupported`: Indica se o chip do documento suporta Chip Authentication. O campo `chipAuthenticationValidation` conserva o resultado da validação quando aplicável.
