android 代码混淆 例子

来源:互联网 发布:农村淘宝下载正版 编辑:程序博客网 时间:2024/06/05 18:57

-optimizationpasses 5
#混淆时不会产生形形色色的类名
-dontusemixedcaseclassnames
#指定不去忽略非公共的库类
-dontskipnonpubliclibraryclasses
#不预校验
-dontpreverify
-dontshrink
#忽略警告
-ignorewarnings

#优化
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*

#不进行混淆保持原样
 -keep public class * extends android.app.Activity
 -keep public class * extends android.app.Application
 -keep public class * extends android.app.Service
 -keep public class * extends android.content.BroadcastReceiver
 -keep public class * extends android.content.ContentProvider
 -keep public class * extends android.app.backup.BackupAgentHelper
 -keep public class * extends android.preference.Preference
 -keep public class com.android.vending.licensing.ILicensingService

#引用第三方包
-libraryjars libs/aopalliance-1.0.jar
-libraryjars libs/commons-codec-1.6.jar
-libraryjars libs/guice-3.0-no_aop.jar
-libraryjars libs/jackson-core-asl-1.8.1.jar
-libraryjars libs/jackson-mapper-asl-1.8.1.jar
-libraryjars libs/javax.inject-1.jar
-libraryjars libs/spring-android-rest-template-1.0.0.M2.jar
-libraryjars ../android-util/libs/alipay_msp.jar
-libraryjars ../android-util/libs/android-common-service-0.0.2-SNAPSHOT.jar
-libraryjars ../android-util/bin/android-util.jar

#不混淆第三方jar包 例如:
-keep class javax.xml.** {*; }
-keep class javax.inject.** {*; }
-keep class com.google.inject.** {*; }
-keep class org.springframework.** {*; }
-keep class org.codehaus.jackson.** {*; }
-keep class org.aopallinace.** {*; }
-keep class org.apache.commons.** {*; }

#在代码中用到了泛型,需要加入此标记,不混淆泛型

-keepattributes Signature

-keepclassmembers class **.R$* {
     public static <fields>;
 }
 
-keepclasseswithmembers class * implements java.io.Serializable{   
 <fields>;   
 <methods>;   
}
-keep public class * implements android.os.Parcelable{
     public protected private *;
}

原创粉丝点击