android - 如何在崩溃期间记录额外数据

标签 android crashlytics

有时,我在 Play 商店发布的应用程序中遇到 NPE,我想记录一些额外的信息,以便更好地了解问题所在。

因此我遵循了来自 Fabric 的指南为了增强报告,希望我能看到我在堆栈跟踪中记录的变量的值。

这是我使用的代码:

id = table.getId();    // <------ line that throws NPE
Crashlytics.log("userIsOnline: " + isOnline);   // <----- variable I want to know it's value

今天我得到了两次崩溃的堆栈跟踪,但没有记录任何变量。这不是我应该记录的方式还是有其他我不明白的地方?

最佳答案

您可以在崩溃期间使用 FirebaseAnalytics 记录事件。您可以使用它通过 logEvent() 方法记录事件。

以下示例显示如何记录建议的 SELECT_CONTENT 事件:

val bundle = Bundle()
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id)
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name)
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, 
bundle)

您可以记录自己的自定义事件,如本例所示:

val params = Bundle()
params.putString("image_name", name)
params.putString("full_text", text)
firebaseAnalytics.logEvent("share_image", params)

希望上面的例子对你有帮助。

关于android - 如何在崩溃期间记录额外数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56766889/

相关文章:

android - 应用程序崩溃后相机未释放

ios - iOS 应用程序重新签名后未检测到应用程序

android - 确定崩溃原因(BackStackRecord)

android - 我们如何将 Admob 和 Firebase crashlytics 添加到 Android Studio Bumble Bee Build.Gradle 文件中

ios - iOS 上不再收到 crashlytics 崩溃的消息

firebase - Flutter Firebase Crashlytics 将堆栈跟踪报告为 Java 类文件而不是 Dart 文件

android - RecyclerView 之间的距离太远

java - Android Universal Music Player ic_by_genre 不显示

android - ProgressBar 不工作 - Android

android - 如何在 Google Play 上为特定设备发布新版应用