有时,我在 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/