转到控制台

从 Firebase 崩溃报告升级为 Firebase Crashlytics

Crashlytics 是 Firebase 新的主要崩溃报告解决方案。如果您的应用使用了 Firebase 崩溃报告,那么告诉您一个好消息:Crashlytics 提供了增强的崩溃报告功能,其设置流程与您所熟悉的流程几乎相同,因此升级非常简单:

  1. 更新您的项目的依赖项。
  2. 迁移所有日志调用(如果有)。
  3. 设置手动初始化(如果您用到了这项功能)。

更新项目依赖项

要更新您应用的 Firebase Crashlytics 依赖项,请在 Crashlytics pod 文件中进行交换,并构建阶段脚本:

  1. 打开您的项目的 Podfile。
  2. 将 Firebase 崩溃报告 pod pod 'Firebase/Crash' 替换为 Firebase Core 和 Crashlytics pod:
    pod 'Firebase/Core'
    pod 'Fabric', '~> 1.9.0'
    pod 'Crashlytics', '~> 3.12.0'
  3. 在您的终端中,导航到您的项目目录并安装 pod:
    pod install
  4. 将 Firebase 崩溃报告构建阶段 "${PODS_ROOT}"/FirebaseCrash/upload-sym 替换为 Crashlytics 构建阶段:
    "${PODS_ROOT}/Fabric/run"

迁移日志

如果您使用了 Firebase 崩溃报告自定义日志,则还必须为 Firebase Crashlytics 更新这些日志:

Firebase 崩溃报告 Firebase Crashlytics
Objective-C Swift Objective-C 和 Swift
FIRCrashLog CLSLog
FIRCrashLogv CLSLogv
FIRCrashMessage FirebaseCrashMessage CLSLog
FIRCrashNSLog CLSNSLog
FIRCrashNSLogv FirebaseCrashNSLogv CLSNSLogv

设置手动初始化

与 Firebase 崩溃报告类似,在您将 Crashlytics 添加到您的应用后,Firebase Crashlytics SDK 会立即自动初始化 Crashlytics。如果您采用手动方式初始化报告功能,Crashlytics 也有办法做到这一点:

  1. 在您的 Info.plist 文件中,使用一个新的键来关闭自动收集功能:
    • 键:firebase_crashlytics_collection_enabled
    • 值:false
  2. 将崩溃报告的初始化调用替换为 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])