Android 代码proguard混淆之后的错误log查看方法

时间:2022-01-24 16:31:49

正式上线的项目都会做代码混淆防止反编译,目前本人使用的是progurad。

项目中加入了UncatchExceptionHandler存储错误日志到sd卡,以便发现Realease版本的bug。但是最近发现一个问题,代码混淆的同时,错误日志也被混淆了。

得到的错误诸如  com.xxx.a.b.c(unkonw source); 无法定位具体的类名和方法。

于是需要将错误日志还原。需要以下工具。

1.项目目录的progurad下有一个mapping.txt文件 这是混淆后的名字 和原名字的映射关系。

Android 代码proguard混淆之后的错误log查看方法

2.在ADT安装目录的sdk\tools\proguard\bin下有三个工具,其中proguardgui.bat就是用来还原的图形化工具。

Android 代码proguard混淆之后的错误log查看方法

3打开proguardgui,选择ReTrace,之后的界面就不用介绍了,各位聪明的程序猿们,开心的还原你的错误日志然后苦逼的去改bug吧。

Android 代码proguard混淆之后的错误log查看方法


补充:如果想要在log中保留错误的代码行号,需要在混淆配置中添加下面这行

#保留crash日志的行号
-keepattributes SourceFile,LineNumberTable