iOS
android
Crashlytics は Firebase の新しい主要なクラッシュ レポート機能です。アプリで Firebase Crash Reporting を使用している場合、これまでとほぼ同じセットアップ プロセスで Crashlytics の拡張されたクラッシュ レポート機能を利用できます。そのためアップグレードは次のように簡単なものになっています。
- プロジェクトの依存関係を更新します。
- ログ呼び出しがある場合は、それらを移行します。
- 手動初期化を使用している場合は、それを設定します。
プロジェクトの依存関係を更新する
iOS
Firebase Crashlytics 用にアプリの依存関係を更新するには、Crashlytics のポッドファイルとビルドフェーズ スクリプトを入れ替えます。
- プロジェクトの Podfile を開きます。
- Firebase Crash Reporting ポッド
pod 'Firebase/Crash'
を Firebase Core ポッドと Crashlytics ポッドで置き換えます。pod 'Firebase/Core' pod 'Fabric', '~> 1.7.2' pod 'Crashlytics', '~> 3.9.3'
- ターミナルで、プロジェクト ディレクトリに移動し、ポッドをインストールします。
pod install
- Firebase Crash Reporting ビルドフェーズ
"${PODS_ROOT}"/FirebaseCrash/upload-sym
を Crashlytics ビルドフェーズで置き換えます。"${PODS_ROOT}/Fabric/run"
android
Firebase Crashlytics 用にアプリの依存関係を更新するには、アプリレベルの build.gradle
に次の変更を加えます。
apply plugin: 'com.android.application'
/* Add the Fabric plugin: */
apply plugin: 'io.fabric'
dependencies {
// ...
/* Delete Crash Reporting:
compile 'com.google.firebase:firebase-crash:11.4.2'
Add Crashlytics: */
compile 'com.crashlytics.sdk.android:crashlytics:2.9.1'
}
firebase-core
バージョン 11.4.2 以降を使用する必要があります。ログを移行する
Firebase Crash Reporting カスタムログを使用している場合は、Firebase Crashlytics のカスタムログも更新する必要があります。
iOS
Firebase Crash Reporting | Firebase Crashlytics | |
---|---|---|
Objective-C | Swift | Objective-C & Swift |
FIRCrashLog |
CLSLog |
|
FIRCrashLogv |
CLSLogv |
|
FIRCrashMessage |
FirebaseCrashMessage |
CLSLog |
FIRCrashNSLog |
CLSNSLog |
|
FIRCrashNSLogv |
FirebaseCrashNSLogv |
CLSNSLogv |
android
Firebase Crash Reporting | Firebase Crashlytics |
---|---|
FirebaseCrash.log() |
Crashlytics.log() |
FirebaseCrash.logcat() |
Crashlytics.log() |
FirebaseCrash.report() |
Crashlytics.logException() |
手動初期化を設定する
Firebase Crash Reporting と同様に、Firebase Crashlytics SDK をアプリに追加するとすぐに Crashlytics が自動的に初期化されます。レポートを手動で初期化する場合、Crashlytics にはそのための手段もあります。
iOS
Info.plist
ファイルの新しいキーを使用して自動収集を無効にします。- キー:
firebase_crashlytics_collection_enabled
- 値:
false
- キー:
- Crash Reporting の初期化呼び出しを 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])
android
AndroidManifest.xml
ファイル内で、Firebase Crash Reporting のmeta-data
タグを 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" />
- 関連するアクティビティでも初期化呼び出しを置き換えます。
/* Delete Crash Reporting: FirebaseCrash.setCrashCollectionEnabled(true); Add Crashlytics: */ Fabric.with(this, new Crashlytics());