Quando utilizar a WebView
Utilize a integração WebView apenas quando:- Estiver a desenvolver numa plataforma sem SDK nativo (por exemplo, Xamarin, Cordova ou outras frameworks de nicho)
- Precisar de um protótipo rápido ou de uma prova de conceito antes de integrar o SDK nativo
- Estiver a migrar da web e quiser uma ponte temporária para uma integração nativa
Como funciona
1
Criar uma sessão
O seu backend chama a API de criação de sessões e recebe um
url alojado.2
Abrir na WebView
A sua aplicação carrega o
url num componente WebView.3
O utilizador conclui a verificação
O utilizador percorre o fluxo de verificação dentro da WebView.
4
Intercetar o callback
Quando terminar, a WebView navega para o seu URL de retorno. A sua aplicação interceta esta navegação e extrai o resultado.
5
Obter os resultados completos através do webhook
O seu backend recebe os dados completos da decisão através do webhook.
Criar uma sessão
Antes de abrir o fluxo de verificação, crie uma sessão a partir do seu backend:201: o url incorpora o session_token de 12 caracteres, não o session_id):
url na WebView. Nunca o construa manualmente a partir de session_token.
React Native
Instale o pacote WebView:Implementação
Demonstração de React Native
Exemplo de verificação com Expo e WebView
Flutter
Adicione os pacotes necessários aopubspec.yaml:
Implementação
Demonstração de Flutter
Exemplo de verificação com WebView em Flutter
Configuração crítica
User agent (obrigatório)
Tem de definir um user agent genérico de dispositivo móvel para que a WebView funcione corretamente:Definições de multimédia (obrigatórias)
Tratar o callback
Após a verificação, a WebView redireciona para o seu URL de retorno com parâmetros de consulta:Resolução de problemas
A câmara não funciona
A câmara não funciona
- Certifique-se de que
mediaPlaybackRequiresUserGestureéfalse - Verifique se as permissões da câmara estão concedidas ao nível do sistema operativo
- Confirme que a string do user agent está definida corretamente
Ecrã em branco ou problemas de carregamento
Ecrã em branco ou problemas de carregamento
- Verifique se o URL da sessão é válido e não expirou
- Confirme a ligação à internet
- Certifique-se de que o JavaScript está ativado nas definições da WebView
O callback não é acionado
O callback não é acionado
- Verifique se o seu URL de retorno corresponde ao que definiu ao criar a sessão
- Confirme que o delegate ou listener de navegação está configurado corretamente
- Experimente definir
callback_methodcomo"both"ao criar a sessão