Kotlin 迁移后 Crashlytics 报告错误的行号
Crashlitycs reporting wrong line number after kotlin migration
Crashlytics 报告在将应用程序迁移到 kotlin 后显示错误的行号,我的 proguard 文件中已经 -keepattributes SourceFile,LineNumberTable
报错行号示例:
我禁用了 R8,它工作正常,报告中的行代码现在显示正确的行号
问题是 R8 正在应用额外的优化来节省 space 使用小整数而不是实际行号。
当您尝试使用 Android sdk 文件夹中的 retrace 脚本进行反混淆时出现反混淆问题:/sdk/tools/proguard/bin/retrace.sh
tools 文件夹中的 proguard 版本为 4.7,无法对优化的行号堆栈跟踪进行反混淆处理。
The solution is to download the latest official proguard version
here and use the
retrace tool inside the bin folder, then the line numbers will be de-obfuscated correctly even with R8 enabled.
You can verify it manually with latest_proguard/bin/retrace.sh mapping.txt stacktrace.txt
Crashlytics 报告在将应用程序迁移到 kotlin 后显示错误的行号,我的 proguard 文件中已经 -keepattributes SourceFile,LineNumberTable
报错行号示例:
我禁用了 R8,它工作正常,报告中的行代码现在显示正确的行号
问题是 R8 正在应用额外的优化来节省 space 使用小整数而不是实际行号。
当您尝试使用 Android sdk 文件夹中的 retrace 脚本进行反混淆时出现反混淆问题:/sdk/tools/proguard/bin/retrace.sh
tools 文件夹中的 proguard 版本为 4.7,无法对优化的行号堆栈跟踪进行反混淆处理。
The solution is to download the latest official proguard version here and use the retrace tool inside the bin folder, then the line numbers will be de-obfuscated correctly even with R8 enabled. You can verify it manually with
latest_proguard/bin/retrace.sh mapping.txt stacktrace.txt