且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

[Android Pro] proguard

更新时间:2022-09-03 23:33:45

-optimizationpasses 5 # 指定代码的压缩级别 
-dontusemixedcaseclassnames # 是否使用大小写混合 
-dontskipnonpubliclibraryclasses # 是否混淆第三方jar 
-dontpreverify # 混淆时是否做预校验 
-verbose # 混淆时是否记录日志 

-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 # 保持哪些类不被混淆 
-keepclasseswithmembernames class * { 
    # 保持 native 方法不被混淆 
    native <methods>; 

-keepclasseswithmembers class * { 
    # 保持自定义控件类不被混淆 
    public <init>(android.content.Context, android.util.AttributeSet); 

-keepclasseswithmembers class * { 
    public <init>(android.content.Context, android.util.AttributeSet, int); 
    # 保持自定义控件类不被混淆 


-keepclassmembers class * extends android.app.Activity { 
    # 保持自定义控件类不被混淆 
    public void *(android.view.View); 


-keepclassmembers enum * { 
    # 保持枚举 enum 类不被混淆 
    public static **[] values(); 
    public static ** valueOf(java.lang.String); 

-keep class * implements android.os.Parcelable { 
    # 保持 Parcelable 不被混淆 
    public static final android.os.Parcelable$Creator *; 

-keep class MyClass; # 保持自己定义的类不被混淆 
-dontwarn com.example.xxxx.** # 保持自己定义的类不被警告

分类: Android Pro
本文转自demoblog博客园博客,原文链接http://www.cnblogs.com/0616--ataozhijia/p/5783178.html如需转载请自行联系原作者

demoblog