mapping文件是我们要实现混淆代码还原必须要关注的一个文件,它里面存放着源码到混淆之后的代码的映射信息,这个文件是在我们执行proguard之后产生的,产生的位置如下图所示:
制造一个混淆代码的Crash
启动MainActivity的时候就会直接Crash并抛出以下异常:
是不是发现出错的堆栈完全看不懂呢,如果你不会还原的话,你可能根本就定位不到出错的位置。
怎么还原?
一个字,简单。利用SDK给我提供的工具就可以,大家要有一颗发现美的眼睛啊,SDK提供了很多有用的工具哦。我们来到sdk/tools/proguard/bin目录下,会发现三个bat文件:
我们直接双击打开proguardgui.bat文件,通过gui来完成我们的还原工作:
哇