Ir para o console

Upgrade do Firebase Crash Reporting para o Firebase Crashlytics

O Crashlytics é o novo e principal relatório de erros do Firebase. Se o aplicativo usa o Firebase Crash Reporting, temos boas notícias: o Crashlytics oferece relatórios de erros aprimorados com quase o mesmo processo de configuração que você está acostumado, então a atualização é simples:

  1. Atualize as dependências do seu projeto.
  2. Migre todas as chamadas de registro que você tiver.
  3. Configure a inicialização manual, se foi a que você usou.

Atualizar dependências do projeto

  1. Adicione os repositórios e a dependência do Crashlytics ao arquivo build.gradle no projeto:
    buildscript {
        repositories {
            // ...
            maven {
               url 'https://maven.fabric.io/public'
            }
        }
        dependencies {
            // ...
            classpath 'io.fabric.tools:gradle:1.31.0'
        }
    }
    
    allprojects { // ... repositories { // ... maven { url 'https://maven.google.com/' } } }
  2. Observação: o Crashlytics requer o plug-in do Google Services versão 3.1.2 ou posterior. Verifique o número da versão com.google.gms:google-services nas dependências build.gradle do projeto.
  3. Para atualizar as dependências do seu app para o Firebase Crashlytics, faça as seguintes alterações no build.gradle no seu nível do app:
    apply plugin: 'com.android.application'
    /* Add the Fabric plugin: */
    apply plugin: 'io.fabric'
    
    dependencies {
        // ...
    
        /* Delete Crash Reporting:
        implementation 'com.google.firebase:firebase-crash:16.2.1'
    
        Add Crashlytics: */
        implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
    
        // Update your firebase-core version, if it's lower than v11.4.2
        implementation 'com.google.firebase:firebase-core:17.0.1'
    }

    Migrar registros

    Se você usou registros personalizados do Firebase Crash Reporting, você também precisa atualizá-los para o Firebase Crashlytics:

    Firebase Crash ReportingFirebase Crashlytics
    FirebaseCrash.log() Crashlytics.log()
    FirebaseCrash.logcat() Crashlytics.log()
    FirebaseCrash.report() Crashlytics.logException()

    Configurar a inicialização manual

    Assim como o Firebase Crash Reporting, o SDK do Firebase Crashlytics inicializa automaticamente o Crashlytics assim que você o adiciona ao seu aplicativo. Se, em vez disso, você inicializar os relatórios manualmente, também há uma maneira para o Crashlytics fazer isso:

    1. Substitua a tag meta-data do Firebase Crash Reporting no seu arquivo AndroidManifest.xml por uma para o Crashlytics:
      <!-- Delete Crash Reporting:
      <meta-data
          android:name="firebase_crash_collection_enabled"
          android:value=false />
      
           Add Crashlytics: -->
      <meta-data
          android:name="firebase_crashlytics_collection_enabled"
          android:value="false" />
      
    2. Também substitua a chamada de inicialização em atividades relevantes:

      Java

      /*   Delete Crash Reporting:
      FirebaseCrash.setCrashCollectionEnabled(true);
           Add Crashlytics: */
      Fabric.with(this, new Crashlytics());

      Kotlin

      /*   Delete Crash Reporting:
      FirebaseCrash.setCrashCollectionEnabled(true)
           Add Crashlytics: */
      Fabric.with(this, Crashlytics())
    Observação: quando inicializado, o Crashlytics gera relatórios de falha até o usuário fechar o aplicativo. Se você quiser dar aos usuários a opção de cancelar a notificação depois de inicializar o Crashlytics, eles precisarão reiniciar seu aplicativo antes que a alteração possa entrar em vigor.