问题描述
使用 dexguard(8.4.9)、Crashlytics(17.2.2)、CrashlyticsGradle(2.3.0) 的应用 已经在 dexguard-rules 中插入了很多规则,但没有解决。 欢迎所有帮助。
Logcat:
D/FirebaseCrashlytics:正在检查崩溃报告... D/FirebaseCrashlytics:找到崩溃报告/data/user/0/com.xxxxxxx/files/.com.google.firebase.crashlytics/nonfatal-sessions/5F64E11E01BD-0001-6C5D-32B9DF9F8C8E.cls D/FirebaseCrashlytics:正在发送报告。 D/FirebaseCrashlytics:在 1.0 秒内开始处理报告... D/FirebaseCrashlytics:没有要包含在此事件中的日志数据。 D/FirebaseCrashlytics:更新应用请求 ID:aca879994130dcc6ab3f551k2j4bjj23 D/FirebaseCrashlytics:没有要包含在此事件中的日志数据。 D/FirebaseCrashlytics:结果是 204 D/FirebaseCrashlytics:无法将 Crashlytics 报告排入 DataTransport java.lang.IllegalArgumentException:传输后端“cct”未注册 在 com.google.android.datatransport.runtime.scheduling.DefaultScheduler$$Lambda$1.run(:1077) 在 com.google.android.datatransport.runtime.SafeLoggingExecutor$SafeLoggingRunnable.run(:47) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 在 java.lang.Thread.run(Thread.java:919)
解决方法
要解决 Firebase Crashlytics 的问题,您必须将其放入 minefest:
<service android:exported="false" android:name="com.google.android.datatransport.runtime.backends.TransportBackendDiscovery">
<meta-data android:name="backend:com.google.android.datatransport.cct.CctBackendFactory" android:value="cct"/>
</service>