Crashlytics 不报告 firebase 中的崩溃
Crashlytics don't report crashes in firebase
使用 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>
添加此代码后:
<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>
我收到一个新错误:
IllegalArgumentException: No such service ComponentInfo{my.package.name/com.google.android.datatransport.runtime.scheduling.jobscheduling.JobInfoSchedulerService}
我通过将此服务添加到清单文件解决了这个错误:
<service
android:name="com.google.android.datatransport.runtime.scheduling.jobscheduling.JobInfoSchedulerService"
android:exported="false"
android:permission="android.permission.BIND_JOB_SERVICE" >
</service>
使用 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>
添加此代码后:
<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>
我收到一个新错误:
IllegalArgumentException: No such service ComponentInfo{my.package.name/com.google.android.datatransport.runtime.scheduling.jobscheduling.JobInfoSchedulerService}
我通过将此服务添加到清单文件解决了这个错误:
<service
android:name="com.google.android.datatransport.runtime.scheduling.jobscheduling.JobInfoSchedulerService"
android:exported="false"
android:permission="android.permission.BIND_JOB_SERVICE" >
</service>