Crashlyticsは、オプトインレポートを作成しなくても正常に機能します。ただし、 tutorial に従ってオプトインレポートを設定するとすぐに、レポートは停止します。
具体的には、次のコンテンツをAndroidManifest.xml
に追加しました
<meta-data
Android:name="firebase_crashlytics_collection_enabled"
Android:value="false" />
そして、以下をonCreate
に追加しました:
Fabric.with(this, Crashlytics())
デバッガーを使用すると、上記の行が実行されたはずです。
ただし、Crashlyticsには何も報告されません。代わりに、ロガーは以下を提供します。
D/Fabric: Falling back to Crashlytics key lookup from Manifest
D/Fabric: Falling back to Crashlytics key lookup from Strings
D/Fabric: Generating Crashlytics ApiKey from google_app_id in Strings
D/Fabric: Using AdvertisingInfo from Preference Store
D/Fabric: Falling back to Crashlytics key lookup from Manifest
D/Fabric: Falling back to Crashlytics key lookup from Strings
D/Fabric: Build ID is: ...
D/CrashlyticsCore: Crashlytics is disabled, because data collection is disabled by Firebase.
D/Fabric: Initializing io.fabric.sdk.Android:fabric [Version: 1.4.6.29], with the following kits:
com.crashlytics.sdk.Android:crashlytics [Version: 2.9.7.29]
com.crashlytics.sdk.Android:beta [Version: 1.2.10.27]
com.crashlytics.sdk.Android:answers [Version: 1.4.5.29]
com.crashlytics.sdk.Android.crashlytics-core [Version: 2.6.6.29]
D/Fabric: Not fetching settings, because data collection is disabled by Firebase.
D/Fabric: Falling back to Crashlytics key lookup from Manifest
D/Fabric: Falling back to Crashlytics key lookup from Strings
D/Fabric: Build ID is: ...
D/Fabric: Analytics collection disabled, because data collection is disabled by Firebase.
D/Fabric: Could not get parcel from Google Play Service to capture AdvertisingId
D/Fabric: Could not get parcel from Google Play Service to capture Advertising limitAdTracking
D/Fabric: AdvertisingInfo not present
D/Fabric: Asychronously getting Advertising Info and storing it to preferences
この興味深い行に気づきました:D/CrashlyticsCore: Crashlytics is disabled, because data collection is disabled by Firebase.
これはおそらく問題の原因です。それでも、このログに関する情報は見つかりません。
Firebase Crashlytics 2.9.7には、ドキュメントに記載されているオプトインレポートが機能しないという問題があります。コードからのCrashlyticsの開始は実行されません。当分の間、2.9.6にダウングレードすると、コードが適切に機能します。
この行をApplicationクラスに追加します
Fabric.with(this, Crashlytics())
バグを修正するCrashlytics 2.9.8がリリースされました。私は確認するためにテストしました。 changelog :
2.9.8 2018年12月21日
- 特定の状況下で誤ってデータ収集を無効にするfirebase_crashlytics_collection_enabledフラグのバグを修正しました。