Android打包发布之前的混淆工作

混淆做常用的就是就是Proguard

在eclipse中打开project.properties文件,在底下添加:

 //说明混淆工作交给proguard-project.txt中去配置
 proguard.config=proguard-project.txt

然后再proguard-project.txt中配置混淆信息:
如果说明都不写,表示完全的混淆,但更多时候我们只需要混淆自己的代码即可,诸如第三方的jar包不需要我们去混淆。一般来说,保持不混淆第三方jar需要三行代码:

 -libraryjars libs/alipaySDK-20150610.jar  //指明jar包
 -dontwarn com.alipay.**          //告诉eclipse不警告,打包时不会报错
 -keep class com.alipay.** { *;}    //最关键的,保持不混淆这个包名

不同的jar包可能会出现不同的问题,比如这里我用到了afinal框架,这个框架用到了反射的机制,所以我们有时有必要加上:

 -dontwarn net.tsz.afinal.**
 -keep class net.tsz.afinal.** { *;}
 -keep public class * extends net.tsz.afinal.**  
 -keep public interface net.tsz.afinal.** {*;}
 -keepattributes Signature
 -keepattributes *Annotation*

还有一点需要注意:当打包完成发布后运行apk文件在手机上,eclipse的logcat中是无法看到log信息的,解决办法是打开sdk\tools目录下的ddms.bat,就可以看到了。

你可能感兴趣的:(Android打包发布之前的混淆工作)