Android混淆工具使用
当混淆后的应用发生崩溃时,日志显示混淆名称(如 a.b.c.d.a())。使用 mapping.txt 配合反混淆工具(如 retrace)可将堆栈还原为原始代码位置,便于定位问题.进入android sdk的目录,执行如下命令,将混淆后的trace.txt 转换成免混淆的日志。记录了混淆编译过程中被识别为冗余代码(未使用代码)并被移除的类、方法和字段。文件记录了被明确保留(未被混淆)的类、方法和
1.mapping.txt
记录混淆前后类名、方法名、字段名及行号的对应关系,例如:
com.example.MyActivity -> a.b.c.d
当混淆后的应用发生崩溃时,日志显示混淆名称(如 a.b.c.d.a())。使用 mapping.txt 配合反混淆工具(如 retrace)可将堆栈还原为原始代码位置,便于定位问题.
进入android sdk的目录,执行如下命令,将混淆后的trace.txt 转换成免混淆的日志。
~/disk2/Android/Sdk/tools/proguard/bin$ ./retrace.sh -verbose test/mapping.txt test/trace.txt > test/deobfuscated_trace.txt
2.seeds.txt
文件记录了被明确保留(未被混淆)的类、方法和字段。
列出所有因 -keep 规则或默认保护规则(如 Activity、Service 等组件)而未被混淆的代码单元。
3.usage.txt
记录了混淆编译过程中被识别为冗余代码(未使用代码)并被移除的类、方法和字段。
例如:如果 SmartScenesApp类中 声明了private static MyApplication sInstance; 但是未使用sInstance对象则在usage.txt会有一条如下记录:
com.android.demo.lileidemo.MyApplication:
private static com.android.demo.lileidemo.MyApplication sInstance
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)