混淆后的apk代码崩溃日志

Obfuscated apk code crash log

我正在处理一个大型 android 项目,非常大,当我们将 apk 发布到市场时我们混淆了我们的代码,现在的问题是: 当我们的应用程序崩溃时,实际上,我们的应用程序会将 post 崩溃日志记录到我们的服务中,但崩溃日志没有意义,因为我们已经对其进行了混淆处理,我们得到了 this:a() 之类的信息,b (未知来源),c().... 那么,如何处理它?如何在混淆 apk 中获得可读的崩溃日志?谢谢!

当您混淆代码时,会生成一个名为 mapping.txt 的文件。此文件描述了原始符号与其混淆版本之间的映射。

如果您为 public 构建保存此文件,则可以使用 retrace 工具对您从崩溃中收到的任何堆栈跟踪进行去混淆处理,从而使它们可用于修复错误!您按如下方式调用该工具:

retrace.sh -verbose mapping.txt obfuscated_trace.txt