Mengupgrade ke Firebase Crashlytics dari Firebase Crash Reporting

Crashlytics adalah pelapor error utama yang baru untuk Firebase. Jika aplikasi Anda menggunakan Firebase Crash Reporting, ada kabar baik: Crashlytics menawarkan pelaporan error yang disempurnakan dengan proses penyiapan yang hampir sama dengan yang Anda gunakan, jadi proses upgrade menjadi sangat mudah:

  1. Update dependensi project Anda.
  2. Migrasikan panggilan log mana pun jika Anda memilikinya.
  3. Siapkan inisialisasi manual jika Anda menggunakannya.

Mengupdate dependensi project

Untuk mengupdate depedensi aplikasi Anda untuk Firebase Crashlytics, tukar file pod Crashlytics dan skrip fase build:

  1. Buka project Podfile Anda.
  2. Ganti pod Firebase Crash Reporting, pod 'Firebase/Crash', dengan pod Firebase Core dan Crashlytics:
    pod 'Firebase/Analytics'
    pod 'Fabric', '~> 1.10.2'
    pod 'Crashlytics', '~> 3.13.4'
  3. Di terminal Anda, masuk ke direktori project dan instal podnya:
    pod install
  4. Ganti fase build Firebase Crash Reporting, "${PODS_ROOT}"/FirebaseCrash/upload-sym, dengan fase build Crashlytics:
    "${PODS_ROOT}/Fabric/run"

Memigrasikan log

Jika menggunakan log kustom Firebase Crash Reporting, Anda harus mengupdatenya juga untuk Firebase Crashlytics:

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

Menyiapkan inisialisasi manual

Seperti Firebase Crash Reporting, Firebase Crashlytics SDK menginisialisasi Crashlytics secara otomatis begitu Anda menambahkannya ke aplikasi Anda. Jika Anda menginisialisasi pelaporan secara manual, Crashlytics juga memiliki cara untuk melakukannya:

  1. Nonaktifkan pengumpulan otomatis menggunakan kunci baru ke file Info.plist Anda:
    • Kunci: firebase_crashlytics_collection_enabled
    • Nilai: false
  2. Ganti panggilan inisialisasi Crash Reporting dengan 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])