O app tem crash, abandono no onboarding e ninguém sabe onde. Veja como instalar o SDK da UXCam, nomear telas, identificar usuários, enviar eventos e proteger dados sensíveis.
Índice do artigo
- O que é a UXCam?
- Onde a UXCam roda: web, Android, iOS e frameworks
- Instalação: o que muda por plataforma
- Marcação de telas: a base dos heatmaps
- Identificação de usuários e propriedades
- Eventos personalizados
- Mascaramento de dados sensíveis (occlusion)
- Os erros que mais aparecem
- Perguntas frequentes sobre UXCam
Analytics de app costuma responder “quantos”. Quantos instalaram, quantos abriram, quantos compraram. A pergunta que trava o crescimento é outra: o que aconteceu na tela antes de a pessoa desistir? É esse o espaço da UXCam.
O que é a UXCam?
A UXCam é uma plataforma de product analytics com session replay, focada em aplicativos e também disponível para web. Além de replays e heatmaps, a documentação destaca funis, retenção, adoção de funcionalidades, alertas de rage tap e anomalias, e analytics de engenharia com crashes, ANRs e exceções ligados à sessão gravada.
Em uma frase: a UXCam mostra o que o usuário fez no app antes de converter, travar ou desinstalar.
Onde a UXCam roda: web, Android, iOS e frameworks
Há SDK Web e SDKs mobile para Android nativo, iOS e React Native (incluindo projetos Expo). Um detalhe útil para times que trabalham com IA: a documentação oficial mantém um arquivo llms.txt com o índice de todas as páginas em Markdown e endpoints em OpenAPI, o que facilita alimentar assistentes de código com a referência certa.
Instalação: o que muda por plataforma
Web. O SDK Web captura automaticamente cliques, taps, scroll e navegação entre páginas depois da instalação, e todas as visualizações de página entram sem configuração extra. Campos como senha e e-mail são mascarados automaticamente.
Android e iOS. A inicialização acontece com um objeto de configuração, onde você define mascaramento, ambiente e comportamento de gravação. No iOS, é possível marcar o ambiente como alpha, beta ou release, o que ajuda a separar sessões de build de teste das de produção. No Android, a captura de crash vem ligada por padrão.
React Native. Instalação via npm ou yarn com o pacote react-native-ux-cam e pod install no iOS. Em Expo, como o SDK exige código nativo, é preciso usar EAS Build.
Como validar: rode o app, navegue por algumas telas e envie o app para segundo plano. A sessão aparece no dashboard poucos segundos depois.
Marcação de telas: a base dos heatmaps
Heatmap em app só faz sentido se cada tela tiver um nome estável. A UXCam oferece nomeação automática, mas a própria documentação de React Native sugere desativar o automático e marcar manualmente. O motivo é prático: nome gerado a partir de classe ou componente muda a cada refatoração e quebra a série histórica.
Boa prática: o nome da tela na UXCam é o mesmo do screen_view no GA4/Firebase.
Identificação de usuários e propriedades
Por padrão, cada instalação recebe um alias aleatório baseado no Install ID. Isso quebra quando a pessoa reinstala o app, divide o aparelho ou entra em vários dispositivos. A solução é chamar setUserIdentity uma vez por sessão, assim que o usuário real for conhecido (login, cadastro, autenticação silenciosa).
// Depois do login
UXCam.setUserIdentity("user_42");
UXCam.setUserProperty("plano", "pro");
UXCam.setUserProperty("origem_cadastro", "google_ads");
Dá para anexar até 100 pares chave-valor por usuário para segmentar funis e heatmaps. Números devem ser convertidos em texto. A chamada precisa acontecer depois da inicialização do SDK, e strings vazias são ignoradas. Depois que um Install ID é ligado a um User ID, o vínculo persiste.
Como testar: faça login com conta de teste em build de debug, espere o upload e busque o User ID em Users no dashboard. Deve aparecer um usuário único com sessões de todos os aparelhos.
Eventos personalizados
Eventos marcam as ações de negócio que a captura automática não entende: assinatura concluída, cupom aplicado, erro de pagamento. O método é logEvent, com nome e propriedades opcionais. Use o mesmo dicionário de eventos do seu plano de mensuração.
Mascaramento de dados sensíveis (occlusion)
Session replay em app bancário, de saúde ou de e-commerce sem mascaramento é risco jurídico. A UXCam chama isso de occlusion: você configura, já na inicialização do SDK, quais telas ou campos devem ser ocultados. A documentação também alerta que dado pessoal não deve ser armazenado sem um acordo de processamento de dados (DPA) em vigor.
Na dúvida, mascare a tela inteira de pagamento e cadastro, e libere elementos específicos depois de validar com o DPO.
Os erros que mais aparecem
- Nomeação automática de telas, que muda a cada release e quebra os heatmaps.
- setUserIdentity chamado antes da inicialização do SDK.
- Propriedades numéricas enviadas sem conversão para texto.
- Build de teste gravando no mesmo ambiente da produção.
- Telas de pagamento e cadastro sem occlusion.
Perguntas frequentes sobre UXCam
O que é a UXCam?
Uma plataforma de product analytics com session replay e heatmaps, focada em aplicativos móveis e também disponível para web.
A UXCam funciona em React Native e Expo?
Sim. Em React Native a instalação é via npm/yarn; em Expo é necessário EAS Build, porque o SDK usa código nativo.
Como identificar usuários na UXCam?
Chame setUserIdentity com o ID interno do usuário uma vez por sessão, logo após o login ou cadastro.
Quantas propriedades de usuário posso enviar?
Até 100 pares chave-valor por usuário.
A UXCam grava senhas?
Campos de senha e e-mail são mascarados automaticamente no SDK Web, e o mascaramento pode ser configurado por tela e elemento nos SDKs mobile.
Qual a diferença entre UXCam e Firebase Analytics?
O Firebase mede eventos e métricas agregadas; a UXCam mostra a sessão gravada e o comportamento visual em cada tela. Os dois são complementares.
