【问题标题】:Incorrect line number with ACRAACRA 的行号不正确
【发布时间】:2012-06-10 22:06:46
【问题描述】:

我使用 android/proguard/ACRA。谁能告诉我为什么我收到的崩溃报告的行号不正确(行号指向明显错误的语句)?

我无法知道崩溃的确切行号,所以我无法修复用户报告的错误,这真的很烦人 谢谢

PS:我正在使用与我正在发布的版本对应的映射文件

【问题讨论】:

  • 他们都错了,还是只有少数?我很想尝试在测试构建中引入一个已知错误,看看我是否可以从该已知条件中获取正确(或不正确)的报告。
  • 好主意我会试试的。问题是该行不正确,或者该行是函数调用(因此该函数中存在问题)

标签: android proguard acra


【解决方案1】:

通过一些优化(特别是类合并和方法内联),ProGuard 可能无法保留所有调试信息,因为 java 类文件格式不支持它。在这些情况下,该信息可能只是一个近似值。不过,这些应该是例外;如果信息始终错误,则您可能使用了错误的映射文件。

【讨论】:

    【解决方案2】:

    我找到了感兴趣的人的答案。您应该避免(预验证、优化和缩小)。这将正确显示所有行号,因为代码没有播放

    【讨论】:

    • 优化会影响行号(见我的回答)。收缩和预验证不会影响行号。
    【解决方案3】:

    经过数小时的研究和尝试多种方法。我找到了解决办法。

    改变

    proguardFiles getDefaultProguardFile('proguard-android-optimize.txt')...

    proguardFiles getDefaultProguardFile('proguard-android.txt')...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-17
      • 1970-01-01
      • 2016-11-26
      • 2011-02-19
      • 2017-10-22
      • 1970-01-01
      • 2018-11-14
      • 1970-01-01
      相关资源
      最近更新 更多