Esta página fornece ajuda para solução de problemas e respostas a perguntas frequentes sobre o uso do Crashlytics. Se você não encontrar o que procura ou precisar de ajuda adicional, entre em contato com o suporte do Firebase .
Solução de problemas gerais/FAQ
Vendo diferentes formatos (e às vezes "variantes") para alguns problemas na tabela Problemas
Você pode notar dois formatos diferentes para problemas listados na tabela Problemas no console do Firebase. E você também pode notar um recurso chamado “variantes” em alguns de seus problemas. Aqui está o porquê!
No início de 2023, lançamos um mecanismo de análise aprimorado para agrupar eventos, bem como um design atualizado e alguns recursos avançados para novos problemas (como variantes!). Confira nossa postagem recente no blog para todos os detalhes, mas você pode ler abaixo os destaques.
O Crashlytics analisa todos os eventos do seu aplicativo (como falhas, não fatais e ANRs) e cria grupos de eventos chamados de problemas – todos os eventos em um problema têm um ponto comum de falha.
Para agrupar eventos nesses problemas, o mecanismo de análise aprimorado agora analisa muitos aspectos do evento, incluindo os quadros no rastreamento de pilha, a mensagem de exceção, o código de erro e outras características de plataforma ou de tipo de erro.
No entanto, dentro deste grupo de eventos, os rastreamentos de pilha que levam à falha podem ser diferentes. Um rastreamento de pilha diferente pode significar uma causa raiz diferente. Para representar essa possível diferença dentro de um problema, agora criamos variantes dentro de problemas - cada variante é um subgrupo de eventos em um problema que tem o mesmo ponto de falha e um rastreamento de pilha semelhante. Com variantes, você pode depurar os rastreamentos de pilha mais comuns em um problema e determinar se diferentes causas raiz estão levando à falha.
Aqui está o que você experimentará com essas melhorias:
Metadados renovados exibidos na linha do problema
Agora ficou mais fácil entender e fazer a triagem de problemas no seu aplicativo.Menos problemas duplicados
Uma alteração no número de linha não resulta em um novo problema.Depuração mais fácil de problemas complexos com diversas causas raiz
Use variantes para depurar os rastreamentos de pilha mais comuns em um problema.Alertas e sinais mais significativos
Um novo problema, na verdade, representa um novo bug.Pesquisa mais poderosa
Cada edição contém mais metadados pesquisáveis, como tipo de exceção e nome do pacote.
Veja como essas melhorias estão sendo implementadas:
Quando recebermos novos eventos do seu aplicativo, verificaremos se eles correspondem a um problema existente.
Se não houver correspondência, aplicaremos automaticamente nosso algoritmo de agrupamento de eventos mais inteligente ao evento e criaremos um novo problema com o design de metadados renovado.
Esta é a primeira grande atualização que estamos fazendo em nosso agrupamento de eventos. Se você tiver comentários ou encontrar algum problema, informe-nos
Não ver métricas livres de falhas e/ou alertas de velocidade
Se você não estiver vendo métricas sem falhas (como usuários e sessões sem falhas) e/ou alertas de velocidade, certifique-se de estar usando oCrashlytics SDK v10.8.0+.
Não vendo registros de localização atual
Se você não estiver vendo os registros de localização atual , recomendamos verificar a configuração do seu aplicativo para o Google Analytics. Certifique-se de atender aos seguintes requisitos:
Você ativou o Google Analytics em seu projeto do Firebase.
Você ativou o compartilhamento de dados para o Google Analytics. Saiba mais sobre essa configuração em Gerenciar suas configurações de compartilhamento de dados do Analytics
Vocêadicionou o SDK do Firebase para Google Analyticsao seu aplicativo. Este SDK deve ser adicionado além do SDK do Crashlytics.
Você está usando as versões mais recentes do SDK do Firebase l10npara todos os produtos que você usa no seu aplicativo.
Verifique especialmente se você está usando , no mínimo , a seguinte versão do SDK do Firebase para Google Analytics:
iOS+ — v6.3.1+ (v8.9.0+ para macOS e tvOS).
dSYMs estão faltando/não estão sendo carregados
Certifique-se de que a fase de construção do seu projeto contenha o script de execução do Crashlytics, que permite ao Xcode fazer upload dos dSYMs do seu projeto no momento da construção (leia Inicializando o Crashlytics para obter instruções sobre como adicionar o script). Depois de atualizar seu projeto, force uma falha e confirme se ela aparece no painel do Crashlytics. Se você vir um alerta "DSYM ausente" no console do Firebase, verifique o Xcode para ter certeza de que ele está produzindo dSYMs corretamente para a compilação. Se o Xcode estiver produzindo dSYMs corretamente e você ainda estiver vendo dSYMs ausentes, é provável que a ferramenta de script de execução esteja travando durante o upload dos dSYMs. Nesse caso, tente cada um dos seguintes: Certifique-se de estar usando a versão mais recente do Crashlytics. Carregue os arquivos dSYM ausentes manualmente: Opção 1: Use a opção "Arrastar e Soltar" baseada no console na guia dSYMs para fazer upload de um arquivo zip contendo os arquivos dSYM ausentes. Opção 2: Use o script upload-symbols
para carregar os arquivos dSYM ausentes, para os UUIDs fornecidos na guia dSYMs .
Se você continuar vendo dSYMs ausentes ou se os uploads ainda não forem bem-sucedidos, entre em contato com o suporte do Firebase e inclua seus registros.
Crashes são mal simbolizados
Se os frames da biblioteca do seu aplicativo não tiverem referências ao código do seu aplicativo, certifique-se de que -fomit-frame-pointer
não está definido como um sinalizador de compilação.Se você vir vários frames (Missing)
na biblioteca do seu aplicativo, verifique se há dSYMs opcionais listados como ausentes (para a versão do aplicativo afetada) na guia dSYMs do Crashlytics do console do Firebase. Em caso afirmativo, siga a etapa de solução de problemas "Alerta de dSYM ausente" nas perguntas frequentes sobre dSYMs estão faltando/não estão sendo carregados nesta página. Observe que o upload desses dSYMs não simbolizará travamentos que já ocorreram, mas ajudará a garantir a simbolização para travamentos futuros .
Quem pode visualizar, escrever e excluir notas sobre um problema?
Os membros do projeto com qualquer uma das funções a seguir podem visualizar e excluir notas existentes e escrever novas notas sobre um problema. Os membros do projeto com qualquer uma das funções a seguir podem visualizar as notas publicadas sobre um problema, mas não podem excluir ou escrever uma nota.
Como são calculados os usuários sem falhas?
Quem pode visualizar, escrever e excluir notas sobre um problema?
Os membros do projeto com qualquer uma das funções a seguir podem visualizar e excluir notas existentes e escrever novas notas sobre um problema. Os membros do projeto com qualquer uma das funções a seguir podem visualizar as notas publicadas sobre um problema, mas não podem excluir ou escrever uma nota.
Integrações
O aplicativo também usa o SDK de anúncios para dispositivos móveis do Google, mas não apresenta falhas
disableSDKCrashReporting
.
Onde está localizado meu conjunto de dados do BigQuery?
Suporte de plataforma
Posso usar o Crashlytics para macOS ou tvOS?
Posso usar o Crashlytics em um projeto do Firebase com vários aplicativos em diferentes plataformas Apple?
Problemas regredidos
O que é um problema regredido?
Pela primeira vez, o Crashlytics recebe um relatório de falha sobre o Crash "A". O Crashlytics abre um problema correspondente para essa falha (problema "A"). Você corrige esse bug rapidamente, fecha o problema "A" e lança uma nova versão do seu aplicativo. O Crashlytics obtém outro relatório sobre o problema "A" depois de você resolvê-lo. - Se o relatório for de uma versão do aplicativo que o Crashlytics conhecia quando você resolveu o problema (o que significa que a versão enviou um relatório de falha para qualquer falha), o Crashlytics não considerará o problema como regredido. O assunto permanecerá encerrado.
- Se o relatório for de uma versão do aplicativo que o Crashlytics não conhecia quando você resolveu o problema (o que significa que a versão nunca enviou nenhum relatório de falha), o Crashlytics considerará o problema regredido e reabrirá o problema .