我目前正在尝试将Google的Firebase Crashlytics报告功能集成到我们的应用程序中。我们目前使用Fabric,但是由于不支持Fabric,以支持Firebase Crashlytics。
我遵循了迁移步骤(从Fabric迁移到使用Firebase Crashlytics)。但是,在测试当前实现时,出现以下错误
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: java.io.FileNotFoundException: /data/user/0/com.company.appa.pos/files/.com.google.firebase.crashlytics/report-persistence/sessions/5ED7DB3A027B00
01184FE3BB77B63DD3/user: open failed: ENOENT (No such file or directory)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at libcore.io.IoBridge.open(IoBridge.java:452)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at java.io.FileInputStream.<init>(FileInputStream.java:76)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.persistence.CrashlyticsReportPersistence.readTextFile(com.google.firebase:firebase-crashlytics@@17.0.0:470)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.persistence.CrashlyticsReportPersistence.synthesizeReport(com.google.firebase:firebase-crashlytics@@17.0.0:309
)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.persistence.CrashlyticsReportPersistence.finalizeReports(com.google.firebase:firebase-crashlytics@@17.0.0:197)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.common.SessionReportingCoordinator.finalizeSessions(com.google.firebase:firebase-crashlytics@@17.0.0:159)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.common.CrashlyticsController.doCloseSessions(com.google.firebase:firebase-crashlytics@@17.0.0:867)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.common.CrashlyticsController.doCloseSessions(com.google.firebase:firebase-crashlytics@@17.0.0:827)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.common.CrashlyticsController$6.call(com.google.firebase:firebase-crashlytics@@17.0.0:407)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.common.CrashlyticsController$6.call(com.google.firebase:firebase-crashlytics@@17.0.0:393)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker$3.then(com.google.firebase:firebase-crashlytics@@17.0.0:106)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.android.gms.tasks.zzf.run(Unknown Source)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(com.google.firebase:firebase-crashlytics@@17.0.0:60)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(com.google.firebase:firebase-crashlytics@@17.0.0:27)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at java.lang.Thread.run(Thread.java:818)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at libcore.io.Posix.open(Native Method)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at libcore.io.BlockGuardOs.open(BlockGuardOs.java:186)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: at libcore.io.IoBridge.open(IoBridge.java:438)
06-03 19:39:23.735 6223 6250 D FirebaseCrashlytics: ... 16 more
06-03 19:39:23.800 6223 6250 D FirebaseCrashlytics: Opening a new session with ID 5ED7E04B031F-0002-184F-E3BB77B63DD3
06-03 19:39:23.823 6223 6250 D FirebaseCrashlytics: Send via DataTransport disabled. Removing DataTransport reports.
06-03 19:39:25.492 6223 9493 D FirebaseCrashlytics: Timeout exceeded while awaiting app exception callback from FA listener.
06-03 19:39:25.493 6223 6223 D FirebaseCrashlytics: Crashlytics completed exception processing. Invoking default exception handler.
06-03 19:39:25.495 6223 6250 D FirebaseCrashlytics: Attempting to send crash report at time of crash...
06-03 19:39:25.508 6223 6250 D FirebaseCrashlytics: Adding single file 5ED7DB3A027B-0001-184F-E3BB77B63DD3.cls to report 5ED7DB3A027B-0001-184F-E3BB77B63DD3
06-03 19:39:25.510 6223 6250 D FirebaseCrashlytics: Sending report to: https://reports.crashlytics.com/spi/v1/platforms/android/apps/com.company.appb/reports
06-03 19:39:27.666 6223 6250 D FirebaseCrashlytics: Create report request ID: null
06-03 19:39:27.666 6223 6250 D FirebaseCrashlytics: Result was: 202
06-03 19:39:27.668 6223 6250 I FirebaseCrashlytics: Crashlytics Reports Endpoint upload complete: 5ED7DB3A027B-0001-184F-E3BB77B63DD3
答案 0 :(得分:1)
Firebaser在这里-
这是一个看起来像您的github问题的链接:https://github.com/firebase/firebase-android-sdk/issues/1559
在this comment中,来自Crashlytics的一位工程师解释说:“如果您看到FileNotFoundException的日志条目以/ user结尾–这是良性的。”因此,除非您实际上对此感到受阻或无法正常工作,否则应该一切就绪。
答案 1 :(得分:0)
在新的Firebase Crashlytics中遇到相同的问题。我对您的建议是回退到Fabric crashlytics的先前版本。