我在使用proguard构建的Android应用上使用Google Analytics v4 API。由此产生的崩溃报告是神秘的。例如,`NullPointerException(@a:t:-1){main}'
1)我可以在不猜测的情况下找到这次崩溃的确切位置吗?
2)如何提高崩溃报告的可读性? documentation显示了如何设置自定义异常报告器,这是有道理的。但是,它也说明了
永远不要将异常消息(e.getMessage())发送给Google Analytics,因为它可能包含个人身份信息。
如果不是消息,我可以使用哪些异常字段来生成崩溃报告,让我通过proguard找到崩溃的位置?
答案 0 :(得分:5)
除了@aleph_null之外,你应该将这两行添加到你的proguard配置文件中以保留你的行号,否则你总是在异常消息中看到-1。
-renamesourcefileattribute SourceFile
-keepattributes SourceFile,LineNumberTable
答案 1 :(得分:1)
一些事情:
随意提出更详细的问题,我会尽力提供帮助。
答案 2 :(得分:1)
解决方案是覆盖StandardExceptionParser
以报告根本原因的包名称。有关详细说明,请参阅my blog post。