运行 Android 8 的三星 S7 Edge 上的“FirebaseInstallations.java”后台崩溃大幅飙升
Posted
技术标签:
【中文标题】运行 Android 8 的三星 S7 Edge 上的“FirebaseInstallations.java”后台崩溃大幅飙升【英文标题】:Massive spike in "FirebaseInstallations.java" background crashes on Samsung S7 Edges running Android 8 【发布时间】:2020-09-20 14:10:02 【问题描述】:几个小时前,我们的 Crashlytics 开始在 FirebaseInstallations.java
和 a Firebase package 上实时报告数百起崩溃。由于受影响的版本已经发布了大约 5 天,除了 Firebase / Google 服务器端问题之外,我不明白为什么会在周日午餐时间突然发生这种情况。
这是突然出现的,我们已经从根本没有经历过这次崩溃,到大约 100 次/小时!
这是完整的堆栈跟踪:
Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference
at com.google.firebase.installations.FirebaseInstallations.registerFidWithServer(FirebaseInstallations.java:452)
at com.google.firebase.installations.FirebaseInstallations.doNetworkCallIfNecessary(FirebaseInstallations.java:331)
at com.google.firebase.installations.FirebaseInstallations.lambda$doGetId$1(FirebaseInstallations.java:296)
at com.google.firebase.installations.FirebaseInstallations$$Lambda$3.run(:2)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
以下是 Crashlytics 信息,运行 android 8 的 Galaxy S7 edge 上几乎所有后台崩溃:
我们使用各种服务,例如 Firebase Remote Config、Crashlytics、Analytics,但 all Firebase systems are apparently healthy。
有什么想法吗?
【问题讨论】:
那些对如何更新感到困惑的人 - github.com/firebase/firebase-android-sdk/issues/…。我建议为 Firebase 平台导入 BoM,这样您就可以通过仅指定一个版本(即 BoM 版本)来管理所有 Firebase 库版本。 BOM 28.4.1 将 Crashlytics 更新到 18.2.1,因为它依赖于 firebase-installations:16.3.3 + 的固定版本,因此可以传递地获得此修复。 【参考方案1】:看起来这个问题是在firebase-installations
16.3.2 中引入的,并在 16.3.3 中修复:
Firebase 安装版本 16.3.3
修复了当 Firebase 服务尝试向 Firebase 安装服务器注册 Firebase 安装 ID (FID) 时发生的 NullPointerException。
对我们来说,这是由于使用 Crashlytics 17.1.1 造成的。该修复程序已移至 17.2.1,由于处理依赖项的方式发生了变化,这也需要明确依赖于 firebase-installations:16.3.3
。
看起来错误可能是由用户清除共享首选项触发的,然后清除了保存的 Firebase ID。我怀疑我们看到的大量实际上是 Firebase 试图一遍又一遍地注册同一个用户。
请参阅this Firebase Android SDK issue 或PR that fixes it 了解更多信息。
【讨论】:
以上是关于运行 Android 8 的三星 S7 Edge 上的“FirebaseInstallations.java”后台崩溃大幅飙升的主要内容,如果未能解决你的问题,请参考以下文章
最佳智能手机TOP4出炉,三星Galaxy S7 edge位居榜首
Android Studio - 无法连接到设备(三星 Galaxy S7)