Quando usar WebView
Use a integração com WebView somente quando:- Você estiver desenvolvendo em uma plataforma sem SDK nativo (por exemplo, Xamarin, Cordova ou outros frameworks de nicho)
- Você precisar de um protótipo rápido ou de uma prova de conceito antes de integrar o SDK nativo
- Você estiver migrando da web e quiser uma ponte temporária para uma integração nativa
Como funciona
1
Crie uma sessão
Seu backend chama a API de criação de sessão e recebe uma
url de página hospedada.2
Abra no WebView
Seu aplicativo carrega a
url em um componente WebView.3
O usuário conclui a verificação
O usuário percorre o fluxo de verificação dentro do WebView.
4
Intercepte o retorno
Ao final, o WebView navega até a sua URL de retorno. Seu aplicativo intercepta essa navegação e extrai o resultado.
5
Receba os resultados completos via webhook
Seu backend recebe os dados completos da decisão via webhook.
Como criar uma sessão
Antes de abrir o fluxo de verificação, crie uma sessão a partir do seu backend:201: a url incorpora o session_token de 12 caracteres, não o session_id):
url no WebView. Nunca a monte manualmente a partir do session_token.
React Native
Instale o pacote WebView:Implementação
Demo para React Native
Exemplo de verificação com Expo + WebView
Flutter
Adicione os pacotes necessários aopubspec.yaml:
Implementação
Demo para Flutter
Exemplo de verificação com WebView no Flutter
Configuração essencial
User agent (obrigatório)
Você deve definir um user agent móvel genérico para que o WebView funcione corretamente:Configurações de mídia (obrigatórias)
Como tratar a URL de retorno
Após a verificação, o WebView redireciona para a sua URL de retorno com parâmetros de consulta:Solução de problemas
A câmera não funciona
A câmera não funciona
- Verifique se
mediaPlaybackRequiresUserGestureestá definido comofalse - Confirme que as permissões de câmera foram concedidas no nível do sistema operacional
- Verifique se a string do user agent está definida corretamente
Tela branca ou problemas de carregamento
Tela branca ou problemas de carregamento
- Confirme que a URL da sessão é válida e não está expirada
- Verifique a conexão com a internet
- Verifique se o JavaScript está habilitado nas configurações do WebView
O callback não é acionado
O callback não é acionado
- Confirme que a sua URL de retorno corresponde à definida ao criar a sessão
- Verifique se o delegate/listener de navegação está configurado corretamente
- Tente definir
callback_methodcomo"both"ao criar a sessão