Receber relatórios de erros fáceis de entender

ios
android

ios

O Firebase Crashlytics processa automaticamente os arquivos do seu símbolo de depuração (.dSYM) para fornecer relatórios de erros legíveis e fáceis de entender.

Há algumas situações em que os uploads do dSYM falham, geralmente devido a configurações de projeto exclusivas ou a um Bitcode no seu app. Quando um upload falhar, o Crashlytics exibirá um alerta "dSYM ausente" no Firebase console para informar você que não é possível exibir relatórios de falhas corretamente.

Se você receber esse alerta, tente resolver o problema da seguinte maneira: verifique se o Xcode está produzindo os arquivos dSYM corretos e, caso ele esteja, execute o script de upload do dSYM manualmente.

Verificar se o Xcode está produzindo arquivos de símbolos de depuração

Com frequência, a causa da ausência dos arquivos de símbolo é o simples fato de que o Xcode parou de produzi-los. Veja como verificar se o projeto está gerando dSYMs em cada criação:

  1. Abra seu projeto no Xcode e selecione o arquivo de projeto dele no navegador.
  2. Selecione seu destino de criação principal no menu suspenso Selecionar um projeto ou destino.
  3. Abra a guia Configurações de criação do destino.
  4. Clique em Todas perto da parte superior da guia.
  5. Procure por "Formato das informações de depuração".
  6. Defina Formato das informações de depuração como DWARF com arquivo dSYM.

Depois de fazer isso, compile seu aplicativo novamente e verifique o Firebase console para ver se o Crashlytics consegue encontrar seus dSYMs.

Execute o script de upload de símbolos manualmente

Como backup, o Crashlytics também inclui upload-symbols, um script que você pode chamar de qualquer lugar no seu processo de compilação para fazer upload dos seus dSYMs manualmente. Esse script fornece mais informações sobre o processo de upload e mensagens de erro mais detalhadas. Para executá-lo, inclua a seguinte linha no seu processo de compilação:

find dSYM_directory -name "*.dSYM" | xargs -I \{\} $PODS_ROOT/Fabric/upload-symbols -gsp /path/to/GoogleService-Info.plist -p platform \{\}

Você também pode executar o script no seu terminal:

/path/to/pods/directory/Fabric/upload-symbols -gsp /path/to/GoogleService-Info.plist -p ios /path/to/dSYMs

Ou de uma fase de criação de script de execução Xcode:

"${PODS_ROOT}/Fabric/upload-symbols" -gsp "${PROJECT_DIR}/GoogleService-Info.plist" -p ios "${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}"
Observação: se você tiver problemas, execute upload-symbols sem parâmetros para receber notas de uso e mais instruções.
android

O Crashlytics usa arquivos de mapeamento ProGuard e DexGuard para renderizar os rastreamentos de pilha do seu app como um código legível e fácil de entender. Para gerar um arquivo de mapeamento adequado, configure o Proguard ou Dexguard para Crashlytics:

  1. Se quiser preservar a informação necessária para que o Crashlytics gere relatórios de erros legíveis, adicione as seguintes linhas ao seu arquivo de configuração Proguard ou Dexguard:
    -keepattributes *Annotation*                      // Keep Crashlytics annotations
    -keepattributes SourceFile,LineNumberTable        // Keep file names/line numbers
    -keep public class * extends java.lang.Exception  // Keep custom exceptions (opt)
    
  2. Para permitir que o Crashlytics faça upload do arquivo de mapeamento ProGuard ou DexGuard automaticamente, remova esta linha do arquivo de configuração:
    -printmapping mapping.txt
Para compilações mais rápidas com o ProGuard, exclua o Crashlytics. Adicione as seguintes linhas ao seu arquivo de configuração ProGuard:
-keep class com.crashlytics.** { *; }
-dontwarn com.crashlytics.**

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.