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

Para atualizar as dependências do seu aplicativo para o Firebase Crashlytics, troque os arquivos do pod do Crashlytics e do script de fase de versão:

  1. Abra o Podfile do projeto.
  2. Substitua o pod do Firebase Crash Reporting, pod 'Firebase/Crash', pelos pods do Firebase Core e do Crashlytics:
    pod 'Firebase/Analytics'
    pod 'Fabric', '~> 1.10.1'
    pod 'Crashlytics', '~> 3.13.1'
  3. No seu terminal, navegue até o diretório do projeto e instale os pods:
    pod install
  4. Substitua a fase de versão do Firebase Crash Reporting, "${PODS_ROOT}"/FirebaseCrash/upload-sym, pela fase de versão do Crashlytics:
    "${PODS_ROOT}/Fabric/run"

Migrar registros

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

Firebase Crash Reporting Firebase Crashlytics
Objective-C Swift Objective-C e Swift
FIRCrashLog CLSLog
FIRCrashLogv CLSLogv
FIRCrashMessage FirebaseCrashMessage CLSLog
FIRCrashNSLog CLSNSLog
FIRCrashNSLogv FirebaseCrashNSLogv CLSNSLogv

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. Desative a coleta automática com uma nova chave no arquivo Info.plist:
    • Chave: firebase_crashlytics_collection_enabled
    • Valor: false
  2. Substitua a chamada de inicialização para o Crash reporting por uma para o Crashlytics:
    Objective-C
    /* Delete Crash Reporting:
    [FIRCrash crashCollectionEnabled:YES];
    
       Add Crashlytics: */
    [Fabric with:@[[Crashlytics class]]];
    Swift
    /* Delete Crash Reporting:
    Crash.sharedInstance().isCrashCollectionEnabled = true
    
       Add Crashlytics: */
    Fabric.with([Crashlytics.self])