android 获取堆栈地址,android – 从Firebase崩溃报告中获取原始堆栈跟踪

最近我发布了一个已发布的混淆的Android应用程序,启用了firebase崩溃报告.应用程序崩溃,因为我没有上传映射文件,我无法正确读取堆栈跟踪.

所以我想下载堆栈跟踪并使用/retrace.sh -verbose mapping.txt~ / trace.txt手动对其进行反混淆处理.

但是我无法获得堆栈跟踪的原始形式……

所以我有两个问题:

>如何从其网站上的firebase崩溃报告选项卡获取原始表单?

>在将应用程序发布到Play商店之前,如何上传映射文件?

解决方法:

>目前,无法从Firebase崩溃报告中获取原始堆栈跟踪.因此,您需要在查看每个错误的详细信息时手动复制它们.

问题是,反混淆不适用于从Firebase崩溃报告中复制的堆栈跟踪字符串,这是因为堆栈跟踪的每一行开头缺少at语句.

例如,这是您从Firebase崩溃报告中获得的内容

Exception java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.example.models.User.getUserName()' on a null object reference

com.example.views.adapters.ExampleAdapter.a (SourceFile:110)

com.example.views.adapters.ExampleAdapter.a (SourceFile:31)

b.a.a.a.b.a (SourceFile:54)

b.a.a.a.b.a (SourceFile:54)

android.support.v7.widget.RecyclerView$a.a (SourceFile:6279)

android.support.v7.widget.RecyclerView$a.b (SourceFile:6312)

您只需要在包含SourceFile字符串的每一行的开头添加.结果应该是这样的

Exception java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.example.models.User.getUserName()' on a null object reference

at com.example.views.adapters.ExampleAdapter.a (SourceFile:110)

at com.example.views.adapters.ExampleAdapter.a (SourceFile:31)

at b.a.a.a.b.a (SourceFile:54)

at b.a.a.a.b.a (SourceFile:54)

at android.support.v7.widget.RecyclerView$a.a (SourceFile:6279)

at android.support.v7.widget.RecyclerView$a.b (SourceFile:6312)

使用这个新字符串,您应该能够像往常一样对堆栈跟踪进行反混淆处理.

我知道,这是很多工作,特别是当发生多个错误但这是当前的解决方法,直到Firebase崩溃报告团队决定启用一个功能来下载原始堆栈跟踪或只是将at字符串放在详细信息而不是修剪出.

老实说,我还没能成功启用这个插件,仍然被指南搞糊涂了.我真的希望他们能够像在Fabric Crashlytics中那样简单,只需在build.gradle文件中添加ext.enableCrashlytics = true即可.

还有另一种方法,通过在发布前故意崩溃应用程序,然后在没有错误的情况下生成新版APK,然后您可以将mapping.txt文件上传到Firebase崩溃报告控制台.

标签:android,firebase,firebase-crash-reporting

来源: https://codeday.me/bug/20190611/1218204.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值