You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

110 regels
4.9 KiB

  1. # Add project specific ProGuard rules here.
  2. # By default, the flags in this file are appended to flags specified
  3. # in D:\Android_liu\Android\sdk/tools/proguard/proguard-android.txt
  4. # You can edit the include path and order by changing the proguardFiles
  5. # directive in build.gradle.
  6. #
  7. # For more details, see
  8. # http://developer.android.com/guide/developing/tools/proguard.html
  9. # Add any project specific keep options here:
  10. # If your project uses WebView with JS, uncomment the following
  11. # and specify the fully qualified class name to the JavaScript interface
  12. # class:
  13. #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
  14. # public *;
  15. #}
  16. #-optimizationpasses 5 # 指定代码的压缩级别
  17. #-dontusemixedcaseclassnames # 是否使用大小写混合
  18. #-dontpreverify # 混淆时是否做预校验
  19. #-verbose # 混淆时是否记录日志
  20. #
  21. #-optimizations !code/simplification/arithmetic,!field/*,!class/merging/* # 混淆时所采用的算法
  22. #
  23. #-keep public class * extends android.app.Activity # 保持哪些类不被混淆
  24. #-keep public class * extends android.app.Application # 保持哪些类不被混淆
  25. #-keep public class * extends android.app.Service # 保持哪些类不被混淆
  26. #-keep public class * extends android.content.BroadcastReceiver # 保持哪些类不被混淆
  27. #-keep public class * extends android.content.ContentProvider # 保持哪些类不被混淆
  28. #-keep public class * extends android.app.backup.BackupAgentHelper # 保持哪些类不被混淆
  29. #-keep public class * extends android.preference.Preference # 保持哪些类不被混淆
  30. #-keep public class com.android.vending.licensing.ILicensingService # 保持哪些类不被混淆
  31. #
  32. #-keepclasseswithmembernames class * { # 保持 native 方法不被混淆
  33. # native <methods>;
  34. #}
  35. #-keepclasseswithmembers class * { # 保持自定义控件类不被混淆
  36. # public <init>(android.content.Context, android.util.AttributeSet);
  37. #}
  38. #-keepclasseswithmembers class * {# 保持自定义控件类不被混淆
  39. # public <init>(android.content.Context, android.util.AttributeSet, int);
  40. #}
  41. #-keepclassmembers class * extends android.app.Activity { # 保持自定义控件类不被混淆
  42. # public void *(android.view.View);
  43. #}
  44. #-keepclassmembers enum * { # 保持枚举 enum 类不被混淆
  45. # public static **[] values();
  46. # public static ** valueOf(java.lang.String);
  47. #}
  48. #-keep class * implements android.os.Parcelable { # 保持 Parcelable 不被混淆
  49. # public static final android.os.Parcelable$Creator *;
  50. #}
  51. #-keepattributes Signature
  52. #-keepattributes InnerClasses
  53. #-keepattributes InnerClasses,EnclosingMethod
  54. -optimizationpasses 5 # 指定代码的压缩级别
  55. -dontusemixedcaseclassnames # 是否使用大小写混合
  56. -dontpreverify # 混淆时是否做预校验
  57. -verbose # 混淆时是否记录日志
  58. #-dontwarn com.umeng.**
  59. #保持com.umeng.**这个包里面的所有类和所有方法不被混淆。(没有友盟的集成时删除此句)
  60. -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* # 混淆时所采用的算法
  61. -keep public class * extends android.app.Application # 保持哪些类不被混淆
  62. -keep public class * extends android.app.Service # 保持哪些类不被混淆
  63. -keep public class * extends android.content.BroadcastReceiver # 保持哪些类不被混淆
  64. -keep public class * extends android.content.ContentProvider # 保持哪些类不被混淆
  65. -keep public class * extends android.app.backup.BackupAgentHelper # 保持哪些类不被混淆
  66. -keep public class * extends android.preference.Preference # 保持哪些类不被混淆
  67. -keep public class com.android.vending.licensing.ILicensingService # 保持哪些类不被混淆
  68. -keepclasseswithmembernames class * { # 保持 native 方法不被混淆
  69. native <methods>;
  70. }
  71. -keepclasseswithmembers class * { # 保持自定义控件类不被混淆
  72. public <init>(android.content.Context, android.util.AttributeSet);
  73. }
  74. -keepclasseswithmembers class * {# 保持自定义控件类不被混淆
  75. public <init>(android.content.Context, android.util.AttributeSet, int);
  76. }
  77. -keepclassmembers class * extends android.app.Activity { # 保持自定义控件类不被混淆
  78. public void *(android.view.View);
  79. }
  80. -keepclassmembers enum * { # 保持枚举 enum 类不被混淆
  81. public static **[] values();
  82. public static ** valueOf(java.lang.String);
  83. }
  84. -keep class * implements android.os.Parcelable { # 保持 Parcelable 不被混淆
  85. public static final android.os.Parcelable$Creator *;
  86. }
  87. ###下面是fastjson的混淆代码
  88. #-dontwarn com.alibaba.fastjson.**
  89. ##-libraryjars /src/main/libs/fastjson-1.1.15.jar
  90. #-keep class com.alibaba.fastjson.** { *; }
  91. #-keepattributes Signature
  92. #
  93. #
  94. #
  95. #-dontwarn org.w3c.dom.bootstrap.DOMImplementationRegistry
  96. #-dontwarn com.baidu.android.pushservice.util.PushDatabase$StatisticsInfo