【发布时间】:2020-10-31 04:09:14
【问题描述】:
由于连接超时问题,Crashlytics 未能报告致命/非致命崩溃。
这是我的应用级构建 gradle
implementation 'com.google.firebase:firebase-core:17.4.4'
implementation 'com.google.firebase:firebase-crashlytics:17.1.1'
implementation 'com.google.firebase:firebase-analytics:17.4.4'
现在没有记录崩溃,每次我打开应用程序时都会收到这个,
E/FirebaseCrashlytics: Create report HTTP request failed.
java.io.InterruptedIOException: timeout
at okhttp3.internal.connection.Transmitter.timeoutExit(Transmitter.kt:105)
at okhttp3.internal.connection.Transmitter.maybeReleaseConnection(Transmitter.kt:295)
at okhttp3.internal.connection.Transmitter.noMoreExchanges(Transmitter.kt:259)
at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.kt:202)
at okhttp3.RealCall.execute(RealCall.kt:67)
at com.google.firebase.crashlytics.internal.network.HttpRequest.execute(HttpRequest.java:129)
at com.google.firebase.crashlytics.internal.report.network.DefaultCreateReportSpiCall.invoke(DefaultCreateReportSpiCall.java:90)
at com.google.firebase.crashlytics.internal.report.network.CompositeCreateReportSpiCall.invoke(CompositeCreateReportSpiCall.java:34)
at com.google.firebase.crashlytics.internal.report.ReportUploader.uploadReport(ReportUploader.java:116)
at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.attemptUploadWithRetry(ReportUploader.java:194)
at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.onRun(ReportUploader.java:149)
at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
at java.lang.Thread.run(Thread.java:919)
Caused by: java.io.IOException: Canceled
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:65)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.kt:194)
at okhttp3.RealCall.execute(RealCall.kt:67)
at com.google.firebase.crashlytics.internal.network.HttpRequest.execute(HttpRequest.java:129)
at com.google.firebase.crashlytics.internal.report.network.DefaultCreateReportSpiCall.invoke(DefaultCreateReportSpiCall.java:90)
at com.google.firebase.crashlytics.internal.report.network.CompositeCreateReportSpiCall.invoke(CompositeCreateReportSpiCall.java:34)
at com.google.firebase.crashlytics.internal.report.ReportUploader.uploadReport(ReportUploader.java:116)
at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.attemptUploadWithRetry(ReportUploader.java:194)
at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.onRun(ReportUploader.java:149)
at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
at java.lang.Thread.run(Thread.java:919)
E/FirebaseCrashlytics: Error occurred sending report com.google.firebase.crashlytics.internal.report.model.SessionReport@8309e69
java.lang.RuntimeException: java.io.InterruptedIOException: timeout
at com.google.firebase.crashlytics.internal.report.network.DefaultCreateReportSpiCall.invoke(DefaultCreateReportSpiCall.java:100)
at com.google.firebase.crashlytics.internal.report.network.CompositeCreateReportSpiCall.invoke(CompositeCreateReportSpiCall.java:34)
at com.google.firebase.crashlytics.internal.report.ReportUploader.uploadReport(ReportUploader.java:116)
at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.attemptUploadWithRetry(ReportUploader.java:194)
at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.onRun(ReportUploader.java:149)
at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
at java.lang.Thread.run(Thread.java:919)
Caused by: java.io.InterruptedIOException: timeout
at okhttp3.internal.connection.Transmitter.timeoutExit(Transmitter.kt:105)
at okhttp3.internal.connection.Transmitter.maybeReleaseConnection(Transmitter.kt:295)
at okhttp3.internal.connection.Transmitter.noMoreExchanges(Transmitter.kt:259)
at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.kt:202)
at okhttp3.RealCall.execute(RealCall.kt:67)
at com.google.firebase.crashlytics.internal.network.HttpRequest.execute(HttpRequest.java:129)
at com.google.firebase.crashlytics.internal.report.network.DefaultCreateReportSpiCall.invoke(DefaultCreateReportSpiCall.java:90)
at com.google.firebase.crashlytics.internal.report.network.CompositeCreateReportSpiCall.invoke(CompositeCreateReportSpiCall.java:34)
at com.google.firebase.crashlytics.internal.report.ReportUploader.uploadReport(ReportUploader.java:116)
at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.attemptUploadWithRetry(ReportUploader.java:194)
at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.onRun(ReportUploader.java:149)
at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
at java.lang.Thread.run(Thread.java:919)
Caused by: java.io.IOException: Canceled
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:65)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.kt:194)
at okhttp3.RealCall.execute(RealCall.kt:67)
at com.google.firebase.crashlytics.internal.network.HttpRequest.execute(HttpRequest.java:129)
at com.google.firebase.crashlytics.internal.report.network.DefaultCreateReportSpiCall.invoke(DefaultCreateReportSpiCall.java:90)
at com.google.firebase.crashlytics.internal.report.network.CompositeCreateReportSpiCall.invoke(CompositeCreateReportSpiCall.java:34)
at com.google.firebase.crashlytics.internal.report.ReportUploader.uploadReport(ReportUploader.java:116)
at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.attemptUploadWithRetry(ReportUploader.java:194)
at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.onRun(ReportUploader.java:149)
at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
at java.lang.Thread.run(Thread.java:919)
感谢任何帮助。
【问题讨论】:
-
我也有同样的问题。 crashlytics 有问题吗?
-
就在今天。奇怪的是,一些崩溃已成功上传(我认为这可能发生在..1-2 小时前的崩溃?)但我看不到最近发送的休息。更有趣的是,我在 .logcat 中看到了有关“成功上传日志”的信息,但我在 firebase 控制台中看不到它们
-
更准确地说,有时我会超时,有时我会看到以下日志: Initializing Crashlytics 17.1.0 Crashlytics Reports Endpoint upload complete:
,但我在控制台中看不到崩溃 -
可能与这个正在进行的事件有关:status.firebase.google.com/incident/Crashlytics/20004
-
@RoshanaPitigala 可能是这样,但是当我更改我的 proguard 规则以保留 okhttp 和 gson 源文件时,我的错误消失了。所以有多种情况可能导致这个超级模糊的错误
标签: android firebase okhttp crashlytics crashlytics-android