react-native-firebase - react-native-firebase Crashlytics 不报告崩溃
问题描述
我在我的应用程序中使用 Fabric Crashlytics 已经有一段时间了,使用react-native-fabric
. 现在我想使用react-native-firebase
执行 JS 堆栈映射的实现。去年,我将我的应用程序(Release 和 Staging 构建、android 和 iOS)迁移到了我的 Firebase 控制台,因此我能够在该控制台和 Fabric 仪表板上看到我的崩溃报告。
我已按照以下步骤进行迁移,当我执行 crashlytics().crash() 并重新启动应用程序时,崩溃报告不会出现在 iOS 或 android 上的任何仪表板上。首先,我像这样删除了 react-native-fabric。
- 删除 app/build.gradle、app/settings.gradle 和 MainApplication.java 中对结构的引用
- 已删除
android/app/fabric.properties
- 从中移除 ApiKey
AndroidManifest.xml
- 从 iOS 构建中移除 Crashlytics 和 Fabric 框架。
- 删除结构运行脚本构建阶段
- 删除 AppDelegate.m 中对结构的引用
- yarn remove react-native-fabric 并从 JS 代码中的 react-native-fabric 中删除导入。
- 从 Info.plist 中删除 Fabric API 密钥(直到后来我才发现这样做的建议)
- 删除 Fabric.app 和相关文件。
(上述某些更改是由 自动完成的react-native unlink react-native-fabric
。)
然后我将我的应用程序从 RN 0.59 升级到了 0.61.4。
然后我react-native-firefase
根据此处的说明安装(v 6.0):https ://invertase.io/oss/react-native-firebase/v6/crashlytics/quick-start
现在,当我调用 crashlytics().crash() 时,应用程序会崩溃,但报告不会出现在 Fabric 或 Firebase 控制台中。
我查看了其他一些 SO 问题,例如Firebase crashlytics not reporting crash,并且无法找到任何适用的提示,因为我使用的是react-native-firebase
Crashlytics 库而不是直接进行本机开发。
解决方案
看来要做到这一点可能是不可能的或非常困难的。在从 fabric page 迁移的 firebase 上,它说:
对于您关联的应用,您的 Crashlytics 数据现在会显示在 Firebase Crashlytics 信息中心(在 Firebase 控制台中)。链接过程不涉及对 Crashlytics SDK 或 Fabric API 密钥的任何更改。请注意,在接下来的几个月中,我们将发布适用于 iOS 和 Android 的特定于 Firebase 的 Crashlytics SDK,并提供进一步的升级说明。因此,目前,如果您迁移了 iOS 和 Android 应用程序:
不要更改您使用 Crashlytics SDK 的方式,因为 iOS 和 Android SDK 没有改变。
不要更改或删除您的 Fabric API 密钥。
对我来说,这意味着 Fabric 和 Firebase SDK 不兼容。
此外,在 Firebase 控制台的设置/集成页面上,有一个“取消链接 Fabric App”按钮。单击此按钮可能会使转换成功,但我不敢这样做,因为我不确定会发生什么,而且我仍然依赖react-native-fabric
于生产中的旧崩溃报告。
推荐阅读
- python - 获取列表字符串中的每个元素
- javascript - 尝试使用 Browserify 从浏览器运行 npm 包(可读性)但没有成功
- react-native - 通过whatsapp(React Native)分享消息和图像
- apache-spark - 仅将每行的非空列收集到数组中
- angular - 如何使用 Angular 7 在条带网关中添加计费和运输字段
- mysql - 错误 1045 (28000):MAC 上用户 'root'@'localhost' 的访问被拒绝(使用密码:否)
- javascript - 如何强制 Antd 将元素作为 div React 渲染的子元素附加到而不是 HTML 正文?
- python - 使用 python/opencv 完全明亮的相机图像(即使没有光线)
- r - 将带有日期的列转换为R中的行
- python - 运行 numpy 时出现错误