首页 > 代码库 > Android代码混淆(新版本ADT)

Android代码混淆(新版本ADT)

说明:

看网上说的很多Android代码混淆的方法都是旧版本ADT的方法,今天用到代码混淆,记下来分享一下,有需要的可以看看。

实践:

我就不写东西了,还是直接给大家看我项目中用到的文件就好了。注释我写在图片上了。

 

第二个文件的代码我还是写出来吧,可能有朋友用的和我的差不多。(注意不要把注释写进去)

这两个文件都是项目生成的时候由ADT自动生成的,不用自己加。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
-keep public class * extends android.app.Service //Service的子类都不混淆,因为有些Service是带Action的,可以这么说,如果你的Activity或者Service支持Action启动的话就最好不要混淆了
-keep class com.XXX.**   //这个是我用的某一个包下的所有java文件都不混淆,因为这里有些Interface,Event等别的地方能用到,混淆的会出问题
 
-libraryjars   libs/android-support-v4.jar //类似libraryjars是表示这个jar包是你引用的,这个就告诉混淆器。不然它就给你弄乱了
-dontwarn android.support.v4.**    
-keep class android.support.v4.** { *; }  
-keep interface android.support.v4.app.** { *; }  
-keep public class * extends android.support.v4.**  
-keep public class * extends android.app.Fragment
 
-libraryjars   libs/afinal_0.5.1_bin.jar //这里和上面一样是引用的jar包,但是我没写keep 是因为我测试过这几个jar包竟然可以混淆,混淆之后也没问题,不过建议还是(ˇ?ˇ) 像上面一样,keep这个jar包里的所有代码,省得出问题
-dontwarn net.tsz.afinal.**
 -libraryjars   libs/picasso-2.2.0.jar
-dontwarn com.squareup.picasso.**
  -libraryjars   libs/universal-image-loader-1.9.2-SNAPSHOT-with-sources.jar
-dontwarn com.nostra13.universalimageloader.**