Google Play控制台堆栈跟踪

时间:2017-05-24 09:24:00

标签: java android google-play stack-trace

在Google Play控制台中,我收到以下异常跟踪。虽然我添加了反混淆文件,但行号显示为0。

java.lang.NullPointerException: at com.ae.apps.common.managers.ContactManager.getContactIdFromAddress(ContactManager.java:0) at com.ae.apps.messagecounter.utils.MessageCounterUtils.sortThisMap(MessageCounterUtils.java:0) at <OR>.getMessageCountDegrees(MessageCounterUtils.java:0) at <OR>.getContactMessageList(MessageCounterUtils.java:0) at <OR>.convertAddressToContact(MessageCounterUtils.java:0) at <OR>.getIndexFromDate(MessageCounterUtils.java:0) at <OR>.getWeekStartDate(MessageCounterUtils.java:0) at <OR>.getMessageLimitValue(MessageCounterUtils.java:0) at <OR>.getCycleSentCount(MessageCounterUtils.java:0) at com.ae.apps.messagecounter.activities.MainActivity$1.run(MainActivity.java:0) at java.lang.Thread.run(Thread.java:818)

我不明白堆栈跟踪中的这个<OR>语句是什么。 ContactManager.getContactIdFromAddress()仅从方法MessageCounterUtils.convertAddressToContact()中调用。

如何正确理解此堆栈跟踪?

我相信我已经在上述方法中添加了必要的Null检查。

https://github.com/midhunhk/ae-apps-library/blob/master/app/src/main/java/com/ae/apps/common/managers/ContactManager.java#L377

2 个答案:

答案 0 :(得分:3)

我相信你遇到了这个问题所回答的同一问题:Android ProGuard return Line Number

Proguard默认不保留行号。

答案 1 :(得分:1)

  

如何正确理解此堆栈跟踪?

&LT;或者>字面意思是&#34; OR&#34;。当为某些行创建堆栈跟踪时,有几种可能性(LineNumberTable丢失或者它已损坏?)因此它们使用此前缀打印。