充电桩app代码

proguard-rules.pro 9.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335
  1. # Add project specific ProGuard rules here.
  2. # By default, the flags in this file are appended to flags specified
  3. # in /Users/zhy/android/sdk/android-sdk-macosx/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. -dontskipnonpubliclibraryclasses
  19. -dontskipnonpubliclibraryclassmembers
  20. #生成混淆后的映射关系
  21. -verbose
  22. #输出映射文件到mappingcd
  23. -printmapping build/outputs/mapping/release/mapping.txt
  24. -ignorewarnings
  25. -optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
  26. -keepattributes Signature
  27. #注解不需要混淆
  28. -keepattributes *Annotation*
  29. #android不做预检验,去掉可以加快混淆速度
  30. -dontpreverify
  31. #抛出异常时保留代码行号,
  32. -keepattributes SourceFile,LineNumberTable
  33. #实体类混淆开始
  34. -dontwarn com.electric.chargingpile.data.**
  35. -keep class com.electric.chargingpile.data.**{*;}
  36. #实体类混淆结束
  37. -keep class com.electric.chargingpile.activity.MainMapActivity {*;}
  38. #高德地图相关混淆开始
  39. #3D 地图 V5.0.0之后:
  40. -keep class com.amap.api.maps.**{*;}
  41. -keep class com.autonavi.**{*;}
  42. -keep class com.amap.api.trace.**{*;}
  43. #定位
  44. -keep class com.amap.api.location.**{*;}
  45. -keep class com.amap.api.fence.**{*;}
  46. -keep class com.autonavi.aps.amapapi.model.**{*;}
  47. #搜索
  48. -keep class com.amap.api.services.**{*;}
  49. #导航
  50. -keep class com.amap.api.navi.**{*;}
  51. -keep class com.autonavi.**{*;}
  52. #内置语音 V5.6.0之后
  53. -keep class com.alibaba.idst.nls.** {*;}
  54. -keep class com.google.**{*;}
  55. -keep class com.nlspeech.nlscodec.** {*;}
  56. #高德地图相关混淆结束
  57. #Gson混淆开始
  58. -keep class com.google.gson.stream.** { *; }
  59. -keepattributes EnclosingMethod
  60. #Gson混淆结束
  61. #butterknife混淆开始
  62. -keep class butterknife.** { *; }
  63. -dontwarn butterknife.internal.**
  64. -keep class **$$ViewBinder { *; }
  65. -keepclasseswithmembernames class * { @butterknife.* <fields>;}
  66. -keepclasseswithmembernames class * { @butterknife.* <methods>;}
  67. #butterknife混淆结束
  68. -keep class cn.sharesdk.**{*;}
  69. -keep class com.sina.**{*;}
  70. -keep class **.R$* {*;}
  71. -keep class **.R{*;}
  72. -keep class com.mob.**{*;}
  73. -keep class m.framework.**{*;}
  74. -dontwarn cn.sharesdk.**
  75. -dontwarn com.sina.**
  76. -dontwarn com.mob.**
  77. -dontwarn **.R$*
  78. # greenDAO混淆开始
  79. -keepclassmembers class * extends org.greenrobot.greendao.AbstractDao {
  80. public static java.lang.String TABLENAME;
  81. }
  82. -keep class **$Properties
  83. # If you do not use SQLCipher:
  84. -dontwarn org.greenrobot.greendao.database.**
  85. # If you do not use RxJava:
  86. -dontwarn rx.**
  87. # greenDAO混淆结束
  88. # jpush混淆开始
  89. -dontoptimize
  90. -dontpreverify
  91. -dontwarn cn.jpush.**
  92. -keep class cn.jpush.** { *; }
  93. -keep class * extends cn.jpush.android.helpers.JPushMessageReceiver { *; }
  94. -dontwarn cn.jiguang.**
  95. -keep class cn.jiguang.** { *; }
  96. # jpush混淆结束
  97. -keepattributes *Annotation*
  98. -keepclassmembers class ** {
  99. @org.greenrobot.eventbus.Subscribe <methods>;
  100. }
  101. -keep enum org.greenrobot.eventbus.ThreadMode { *; }
  102. # Only required if you use AsyncExecutor
  103. -keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent {
  104. <init>(java.lang.Throwable);
  105. }
  106. -keep class cn.sharesdk.**{*;}
  107. -keep class com.sina.**{*;}
  108. -keep class **.R$* {*;}
  109. -keep class **.R{*;}
  110. -keep class com.mob.**{*;}
  111. -keep class m.framework.**{*;}
  112. -dontwarn cn.sharesdk.**
  113. -dontwarn com.sina.**
  114. -dontwarn com.mob.**
  115. -dontwarn **.R$*
  116. -keepclassmembers class ** {
  117. public void onEvent*(**);
  118. }
  119. # 混淆忽略东软jar
  120. -keep class com.dlruijin.sid.** {*;}
  121. -dontwarn okhttp3.**
  122. -keep class okhttp3.**{*;}
  123. # 混淆忽略东软jar
  124. #EventBus混淆开始
  125. #//如果使用了EventBus processor进行加速,就必须加上这个(只要有这个注解的类和方法都不混淆,为反编译提供了便利), 如果没有用到加速,这个就不用了
  126. -keepclassmembers class ** {
  127. @org.greenrobot.eventbus.Subscribe <methods>;
  128. }
  129. -keep enum org.greenrobot.eventbus.ThreadMode { *; }
  130. # Only required if you use AsyncExecutor
  131. -keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent {
  132. <init>(java.lang.Throwable);
  133. }
  134. #EventBus混淆结束
  135. # 科大讯飞混淆开始
  136. -keep class com.iflytek.**{*;}
  137. -keepattributes Signature
  138. # 科大讯飞混淆结束
  139. #Rxjava&RxAndroid混淆开始
  140. -dontwarn sun.misc.**
  141. -keepclassmembers class rx.internal.util.unsafe.*ArrayQueue*Field* {
  142. long producerIndex;
  143. long consumerIndex;
  144. }
  145. -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef {
  146. rx.internal.util.atomic.LinkedQueueNode producerNode;
  147. }
  148. -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueConsumerNodeRef {
  149. rx.internal.util.atomic.LinkedQueueNode consumerNode;
  150. }
  151. #Rxjava&RxAndroid混淆结束
  152. -dontoptimize
  153. -dontpreverify
  154. -dontwarn cn.jpush.**
  155. -keep class cn.jpush.** { *; }
  156. -keep class * extends cn.jpush.android.helpers.JPushMessageReceiver { *; }
  157. -dontwarn cn.jiguang.**
  158. -keep class cn.jiguang.** { *; }
  159. # Okhttp3混淆开始
  160. -dontwarn okhttp3.**
  161. -dontwarn okio.**
  162. -dontwarn javax.annotation.**
  163. # A resource is loaded with a relative path so the package of this class must be preserved.
  164. -keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase
  165. # Okhttp3混淆结束
  166. # Glide
  167. -keep public class * implements com.bumptech.glide.module.GlideModule
  168. -keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** {
  169. **[] $VALUES;
  170. public *;
  171. }
  172. # support-v7-appcompat
  173. -keep public class android.support.v7.widget.** { *; }
  174. -keep public class android.support.v7.internal.widget.** { *; }
  175. -keep public class android.support.v7.internal.view.menu.** { *; }
  176. -keep public class * extends android.support.v4.view.ActionProvider {
  177. public <init>(android.content.Context);
  178. }
  179. # support-design
  180. -dontwarn android.support.design.**
  181. -keep class android.support.design.** { *; }
  182. -keep interface android.support.design.** { *; }
  183. -keep public class android.support.design.R$* { *; }
  184. -keepclasseswithmembernames class * {
  185. native <methods>;
  186. }
  187. -keepclasseswithmembernames class * {
  188. public void run(...);
  189. }
  190. -keepclasseswithmembernames class * {
  191. public <init>(android.content.Context, android.util.AttributeSet);
  192. }
  193. -keepclasseswithmembernames class * {
  194. public <init>(android.content.Context, android.util.AttributeSet, int);
  195. }
  196. -keep public class * extends android.app.Activity
  197. -keep public class * extends android.app.Application
  198. -keep public class * extends android.app.Service
  199. -keep public class * extends android.content.BroadcastReceiver
  200. -keep public class * extends android.content.ContentProvider
  201. -keep public class * extends android.support.v4.widget
  202. -dontwarn android.support.v4.**
  203. -dontwarn android.os.**
  204. -keep class android.support.v4.** { *; }
  205. -keepclassmembers class * extends android.app.Activity {
  206. public void *(android.view.View);
  207. }
  208. -keepclassmembers enum * {
  209. public static **[] values();
  210. public static ** valueOf(java.lang.String);
  211. }
  212. -keep class * implements android.os.Parcelable {
  213. public static final android.os.Parcelable$Creator *;
  214. }
  215. -keep public class * extends android.view.View {
  216. public <init>(android.content.Context);
  217. public <init>(android.content.Context, android.util.AttributeSet);
  218. public <init>(android.content.Context, android.util.AttributeSet, int);
  219. public void set*(...);
  220. }
  221. -keepclassmembers class **.R$* {
  222. public static <fields>;
  223. }
  224. -keep public class com.ikmak.parent.R$*{
  225. public static final int *;
  226. }
  227. -keepnames class * implements java.io.Serializable
  228. -keepclassmembers class * implements java.io.Serializable {
  229. static final long serialVersionUID;
  230. private static final java.io.ObjectStreamField[] serialPersistentFields;
  231. !static !transient <fields>;
  232. private void writeObject(java.io.ObjectOutputStream);
  233. private void readObject(java.io.ObjectInputStream);
  234. java.lang.Object writeReplace();
  235. java.lang.Object readResolve();
  236. }
  237. -keepclassmembers class fqcn.of.javascript.interface.for.Webview {
  238. public *;
  239. }
  240. -keepclassmembers class * extends android.webkit.WebViewClient {
  241. public void *(android.webkit.WebView, java.lang.String, android.graphics.Bitmap);
  242. public boolean *(android.webkit.WebView, java.lang.String);
  243. }
  244. -keepclassmembers class * extends android.webkit.WebViewClient {
  245. public void *(android.webkit.WebView, jav.lang.String);
  246. }
  247. #ijkplayer
  248. -keep class tv.danmaku.ijk.media.player.** {*;}
  249. -keep class tv.danmaku.ijk.media.player.IjkMediaPlayer{*;}
  250. -keep class tv.danmaku.ijk.media.player.ffmpeg.FFmpegApi{*;}
  251. #picure library
  252. -keep class com.luck.picture.lib.**{*;}
  253. -dontwarn demo.**
  254. -keep class demo.**{*;}
  255. -dontwarn net.sourceforge.pinyin4j.**
  256. -keep class net.sourceforge.pinyin4j.**{*;}
  257. -keep class net.sourceforge.pinyin4j.format.**{*;}
  258. -keep class net.sourceforge.pinyin4j.format.exception.**{*;}
  259. -dontwarn javax.swing.**
  260. -keep class javax.swing.** { *;}
  261. -dontwarn java.rmi.**
  262. -keep class java.rmi.** { *;}
  263. #----------- rxjava rxandroid----------------
  264. -dontwarn sun.misc.**
  265. -keepclassmembers class rx.internal.util.unsafe.*ArrayQueue*Field* {
  266. long producerIndex;
  267. long consumerIndex;
  268. }
  269. -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef {
  270. rx.internal.util.atomic.LinkedQueueNode producerNode;
  271. }
  272. -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueConsumerNodeRef {
  273. rx.internal.util.atomic.LinkedQueueNode consumerNode;
  274. }
  275. -dontnote rx.internal.util.PlatformDependent