Android App 混淆、打包、错误日志追踪

一 打混淆包,带正式签名

1 编辑proguard-rules.txt文件,配置好不能混淆的类或方法,否则会报错。

a、需要反射的代码

b、系统接口

c、Jni接口

d、需要序列号和反序列化的代码(即实现Serializable、Parcelable接口的JavaBean)

e、与服务端进行元数据交互的JavaBean(JSON、XML中对应的类) 

 

2 检查 gradle.build文件中的buildTypes  release节点,确认minifyEnabled true

 

 

3 LogUtils工具类中关闭log的打印

4 可以直接在AS自带的命令行里面 执行gradle clean assembleRelease 打包

5 找到 ./build/outputs/apk/XXX-release.apk

  注意备份mapping文件 ./build/outputs/mapping/release/mapping.txt

二 通过mapping文件查看混淆后的报错问题:

1,进入android  sdk目录 sdk/tools/proguard/bin/proguardgui.sh   将这个文件拖到命令行中,这样就可以进入一个图形界面操作了。

2, ReTrace-->导入 mapping.txt文件,将崩溃收集器文件中的报错日志粘贴到 Obfuscated stack trace中,然后点击 ReTrace! 按钮,这样你就可以看到混淆前的代码了,定位bug当然不在话下啦!

 

posted on 2016-02-27 18:19  Mike_迈克  阅读(3090)  评论(0编辑  收藏  举报

导航