---
title: Tratamento de erros
canonical: https://developer.unico.io/pt-BR/dual-api/developers/sdks-and-tools/flutter/error-handling
locale: pt-BR
generated_by: markdown-export
---

Todo o tratamento de erros do Flutter SDK está centralizado nesta seção. Os callbacks `onErrorUnico`, `onErrorSelfie` e `onErrorDocument` recebem um objeto `UnicoError` que expõe `getCode()` e `getDescription()`.

## Códigos de erro

| Código | Descrição |
|---|---|
| `73001` | Contexto inválido |
| `73002` | Permissão para abrir a câmera não concedida |
| `73003` | O nível mínimo de API é 21 (LOLLIPOP) |
| `73004` | Não foi possível encontrar a implementação da interface callback `iAcessoBioSelfie` |
| `73005` | Não foi possível encontrar a implementação da interface callback `iAcessoBioDocument` |
| `73006` | Não é possível abrir a câmera em emuladores |
| `73100` | Não foi possível conectar à internet |
| `73200` | Informe o nome do arquivo JSON |
| `73202` | Não foi possível interpretar o arquivo JSON |
| `73300` | Não foi possível obter o objeto de autenticação unico |
| `73301` | Não foi possível interpretar o objeto |
| `73302` | Não foi possível encontrar o token unico |
| `73303` | O host atual não está registrado |
| `73400` | Não foi possível inicializar a câmera |
| `73500` | Não foi possível obter o token de sessão — erro na resposta do serviço |
| `73501` | Não foi possível interpretar o objeto |
| `73502` | Não foi possível obter o token de sessão |
| `73701` | Não foi possível encontrar o import do liveness ativo |
| `73702` | Não foi possível inicializar o liveness ativo em modo de produção |
| `73703` | Não foi possível obter a sessão de liveness ativo |
| `73704` | O usuário pressionou o botão cancelar e não concluiu a sessão |
| `73705` | A sessão não foi realizada com sucesso e um FaceScan não foi gerado |
| `73706` | Acesso à câmera negado — o usuário negou explicitamente a permissão ou a política do dispositivo a bloqueia |
| `73707` | A sessão foi cancelada porque o aplicativo foi encerrado, entrou em modo de suspensão, recebeu uma notificação do SO ou foi colocado em segundo plano |
| `73708` | A sessão foi cancelada porque o dispositivo está no modo paisagem |
| `73709` | A sessão foi cancelada porque o dispositivo está no modo retrato invertido |
| `73710` | A sessão foi cancelada porque o usuário não conseguiu concluí-la dentro do tempo limite definido |
| `73712` | A sessão foi cancelada devido à pressão de memória / aplicativo fora de produção requer rede |
| `73713` | A sessão foi cancelada porque a sua chave precisa ser validada novamente |
| `73714` | A sessão foi cancelada porque a chave de criptografia configurada pelo desenvolvedor não era válida |
| `73715` | A sessão foi cancelada porque nem todas as imagens de orientação foram configuradas |
| `73716` | A sessão foi cancelada porque o SDK não conseguiu iniciar a câmera neste dispositivo |
| `73717` | A sessão foi cancelada porque o usuário estava em estado bloqueado |
| `73718` | Erro desconhecido e inesperado durante o uso normal das APIs nativas |
| `73719` | A sessão foi cancelada porque o usuário pressionou a mensagem de subtexto da tela de preparação |
| `73800` | Não foi possível construir a chave criptografada |

:::secondary[Catálogo oficial de erros]
Os códigos acima refletem o catálogo do Flutter SDK. O catálogo oficial de códigos de erro multiplataforma está disponível em [Referência de API > Códigos de erro](/dual-api/developers/api-reference/error-codes).
:::

## Tratando o callback

```dart
@override
void onErrorUnico(UnicoError error) {
  final code = error.getCode();
  final description = error.getDescription();
  // tratar erro
}
```

## Callbacks de ciclo de vida

Além de `onErrorUnico`, o SDK também aciona:

- `onUserClosedCameraManually()` — o usuário fechou a câmera manualmente.
- `onSystemClosedCameraTimeoutSession()` — sessão expirou por timeout (padrão 40 s, mínimo 40 s).
- `onSystemChangedTypeCameraTimeoutFaceInference()` — detecção de rosto excedeu o limite de 13 s; a captura muda para o modo manual.