proguard-rules.pro 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372
  1. -optimizations !code/simplification/cast,!field/*,!class/merging/*
  2. -optimizationpasses 5
  3. -allowaccessmodification
  4. -dontpreverify
  5. -dontusemixedcaseclassnames
  6. -dontskipnonpubliclibraryclasses
  7. -verbose
  8. # 保留Annotation不混淆
  9. -keepattributes *Annotation*,InnerClasses
  10. ### Android support
  11. -dontwarn org.apache.http.**
  12. -dontwarn android.support.**
  13. -keep class android.support.** {*;}
  14. -keep class android.webkit.** {*;}
  15. -keep public class * extends android.app.Activity
  16. -keep public class * extends android.support.v4.app.Fragment
  17. -keep public class * extends android.app.Application
  18. -keep public class * extends android.app.Service
  19. -keep public class * extends android.content.BroadcastReceiver
  20. -keep public class * extends android.content.ContentProvider
  21. -keep public class * extends android.app.backup.BackupAgentHelper
  22. -keep public class * extends android.preference.Preference
  23. -keep public class * extends android.view.View
  24. -keep public class com.google.vending.licensing.ILicensingService
  25. -keep public class com.android.vending.licensing.ILicensingService
  26. -keepattributes *Annotation*,InnerClasses
  27. -keepattributes SourceFile,LineNumberTable
  28. -keepattributes Exceptions
  29. -keepattributes Signature
  30. #高德
  31. -dontwarn com.amap.api.**
  32. -dontwarn com.a.a.**
  33. -dontwarn com.autonavi.**
  34. -keep class com.amap.api.** {*;}
  35. -keep class com.autonavi.** {*;}
  36. -keep class com.a.a.** {*;}
  37. #微信
  38. -dontwarn com.tencent.mm.**
  39. -keep class com.tencent.mm.**{*;}
  40. #支付宝
  41. -dontwarn com.alipay.**
  42. -keep class com.alipay.**{*;}
  43. -dontwarn org.json.alipay.**
  44. -keep class org.json.alipay.**{*;}
  45. #okhttp
  46. -dontwarn okhttp3.**
  47. -keep class okhttp3.**{*;}
  48. #okio
  49. -dontwarn okio.**
  50. -keep class okio.**{*;}
  51. ### glide 4
  52. -keep public class * implements com.bumptech.glide.module.GlideModule
  53. -keep public class * extends com.bumptech.glide.module.AppGlideModule
  54. -keep class com.bumptech.glide.GeneratedAppGlideModuleImpl
  55. -keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** {
  56. **[] $VALUES;
  57. public *;
  58. }
  59. ##litepal混淆
  60. -dontwarn org.litepal.*
  61. -keep class org.litepal.** { *; }
  62. -keep enum org.litepal.**
  63. -keep interface org.litepal.** { *; }
  64. -keep public class * extends org.litepal.**
  65. -keepattributes *Annotation*
  66. -keepclassmembers enum * {
  67. public static **[] values();
  68. public static ** valueOf(java.lang.String);
  69. }
  70. #gson
  71. -keep class sun.misc.Unsafe { *; }
  72. -keep class * extends com.google.gson.JsonElement { *; }
  73. -keepclasseswithmembernames class * {
  74. native <methods>;
  75. }
  76. -keepclasseswithmembers class * {
  77. public <init>(android.content.Context, android.util.AttributeSet);
  78. public <init>(android.content.Context, android.util.AttributeSet, int);
  79. }
  80. -keep class * implements android.os.Parcelable {
  81. public static final android.os.Parcelable$Creator *;
  82. }
  83. -keepclassmembers class * implements java.io.Serializable {
  84. static final long serialVersionUID;
  85. private static final java.io.ObjectStreamField[] serialPersistentFields;
  86. private void writeObject(java.io.ObjectOutputStream);
  87. private void readObject(java.io.ObjectInputStream);
  88. java.lang.Object writeReplace();
  89. java.lang.Object readResolve();
  90. }
  91. -keep class **.R$* {*;}
  92. #讯飞
  93. -dontwarn com.iflytek.**
  94. -keep class com.iflytek.** {*;}
  95. #不混淆实体涉及gson解析
  96. -keep class com.bc_chat.account.entity.**{*;}
  97. -keep class com.bc_chat.bc_base.entity.**{*;}
  98. -keep class com.bc_chat.im.entity.**{*;}
  99. # ARouter
  100. -keep public class com.alibaba.android.arouter.routes.**{*;}
  101. -keep class * implements com.alibaba.android.arouter.facade.template.ISyringe{*;}
  102. -keep interface * implements com.alibaba.android.arouter.facade.template.IProvider
  103. ### glide 3
  104. -keepnames class com.zhaohaoting.framework.utils.glid.CustomCachingGlideModule
  105. #Zhtlibrary
  106. -keep class com.zhaohaoting.framework.view.**{*;}
  107. -keep class com.zhaohaoting.framework.abs.entity.**{*;}
  108. #里面涉及反射
  109. -keep class * extends com.zhaohaoting.framework.recyclerview.adapter.BaseMultiItemFetchLoadAdapter{*;}
  110. -keep class * extends com.zhaohaoting.framework.recyclerview.adapter.BaseMultiItemQuickAdapter{*;}
  111. #----------------netty-------
  112. -dontwarn io.netty.**
  113. -keep class io.netty.** { *;}
  114. -dontwarn io.reactivex.netty.**
  115. -keep class io.reactivex.netty.** { *;}
  116. -dontwarn org.slf4j.**
  117. -keep class org.slf4j.** { *;}
  118. #----------------netty-------
  119. # 对于带有回调函数的onXXEvent、**On*Listener的,不能被混淆
  120. -keepclassmembers class * {
  121. void *(**On*Event);
  122. void *(**On*Listener);
  123. }
  124. #Support 混淆配置
  125. -keep class android.support.** { *; }
  126. -dontwarn android.support.**
  127. #sheraSdk
  128. -keep class android.net.http.SslError
  129. -keep class android.webkit.**{*;}
  130. -keep class cn.sharesdk.**{*;}
  131. -keep class com.sina.**{*;}
  132. -keep class m.framework.**{*;}
  133. #百度统计
  134. -keep class com.baidu.bottom.** { *; }
  135. -keep class com.baidu.kirin.** { *; }
  136. -keep class com.baidu.mobstat.** { *; }
  137. #junit 混淆配置
  138. -keep class junit.** { *; }
  139. -dontwarn junit.**
  140. -keep class org.junit.** { *; }
  141. -dontwarn org.junit.**
  142. -keep class org.hamcrest.** { *; }
  143. -dontwarn org.hamcrest.**
  144. #--------retrofit2--------
  145. -dontwarn retrofit2.**
  146. -keep class retrofit2.** { *; }
  147. -keepattributes Signature
  148. -keepattributes Exceptions
  149. -dontwarn okio.**
  150. -dontwarn javax.annotation.Nullable
  151. -dontwarn javax.annotation.ParametersAreNonnullByDefault
  152. -keep class okio.** { *;}
  153. -dontwarn okhttp3.**
  154. -keep class okhttp3.** { *;}
  155. -dontwarn rx.internal.**
  156. -keep class rx.internal.** { *;}
  157. -dontwarn io.reactivex.**
  158. -keep class io.reactivex.** { *;}
  159. # Keep native methods
  160. #apache
  161. -keep class org.apache.** {*;}
  162. -dontwarn org.apache.**
  163. -keep class android.net.** {*;}
  164. -dontwarn android.net.**
  165. #华为
  166. -keep class com.huawei.android.** {*;}
  167. -dontwarn com.huawei.android.**
  168. -keepattributes *Annotation*
  169. -keepattributes Exceptions
  170. -keepattributes InnerClasses
  171. -keepattributes Signature
  172. -keepattributes SourceFile,LineNumberTable
  173. -keep class com.hianalytics.android.**{*;}
  174. -keep class com.huawei.updatesdk.**{*;}
  175. -keep class com.huawei.hms.**{*;}
  176. -keep class com.huawei.gamebox.plugin.gameservice.**{*;}
  177. -keep public class com.huawei.android.hms.agent.** extends android.app.Activity { public *; protected *; }
  178. -keep interface com.huawei.android.hms.agent.common.INoProguard {*;}
  179. -keep class * extends com.huawei.android.hms.agent.common.INoProguard {*;}
  180. #google gcm
  181. -keep class com.google.android.gms.** {*;}
  182. -dontwarn com.google.android.gms.**
  183. #fcm
  184. -dontwarn com.xiaomi.mipush.sdk.**
  185. -keep public class com.xiaomi.mipush.sdk.* {*;}
  186. -keep public class com.google.firebase.* {*;}
  187. #小米
  188. -dontwarn com.xiaomi.push.**
  189. -keep class com.xiaomi.** {*;}
  190. #魅族
  191. -dontwarn com.meizu.cloud.**
  192. -keep class com.meizu.cloud.** {*;}
  193. #vivo
  194. -dontwarn com.vivo.push.**
  195. -keep class com.vivo.push.** {*;}
  196. -keep class com.vivo.vms.** {*;}
  197. #魅族
  198. -dontwarn com.coloros.mcssdk.**
  199. -keep class com.coloros.mcssdk.** {*;}
  200. #RongRTCLib
  201. -keep public class cn.rongcloud.** {*;}
  202. # RongCloud SDK
  203. -keep class io.rong.** {*;}
  204. -keep class cn.rongcloud.** {*;}
  205. -keep class * extends io.rong.imlib.model.MessageContent {*;}
  206. -dontwarn io.rong.push.**
  207. -dontnote com.xiaomi.**
  208. -dontnote com.google.android.gms.gcm.**
  209. -dontnote io.rong.**
  210. -keepattributes Exceptions,InnerClasses
  211. -keepattributes Signature
  212. -ignorewarnings
  213. # VoIP
  214. -keep class io.agora.rtc.** {*;}
  215. # Location
  216. -keep class com.amap.api.**{*;}
  217. -keep class com.amap.api.services.**{*;}
  218. #混淆融云的eventbus回调方法
  219. -keepclassmembers class * {
  220. void **MainThread*(...);
  221. void **BackgroundThread*(...);
  222. void **Async*(...);
  223. }
  224. # 红包
  225. -keep class com.google.gson.** { *; }
  226. -keep class com.uuhelper.Application.** {*;}
  227. -keep class net.sourceforge.zbar.** { *; }
  228. -keep class com.google.android.gms.** { *; }
  229. -keep class com.alipay.** {*;}
  230. -keep class com.jrmf360.rylib.** {*;}
  231. #电话 9.1.3版本以下使用
  232. -keep class cn.rongcloud.rtc.core.** { *; }
  233. -keep class cn.rongcloud.rtc.engine.binstack.json.** { *; }
  234. -keep class com.blink.** { *; }
  235. -keep class com.bailingcloud.bailingvideo.engine.binstack.json.** { *; }
  236. -keep class bailingquic.**{*;}
  237. -keep class go.**{*;}
  238. -keepclassmembers class * {
  239. @org.greenrobot.eventbus.Subscribe <methods>;
  240. }
  241. -keep enum org.greenrobot.eventbus.ThreadMode { *; }
  242. # Only required if you use AsyncExecutor
  243. -keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent {
  244. <init>(java.lang.Throwable);
  245. }
  246. -keepclassmembers class * {
  247. native <methods>;
  248. }
  249. #友盟
  250. -dontshrink
  251. -dontoptimize
  252. -dontwarn com.google.android.maps.**
  253. -dontwarn android.webkit.WebView
  254. -dontwarn com.umeng.**
  255. -dontwarn com.tencent.weibo.sdk.**
  256. -dontwarn com.facebook.**
  257. -keep class com.umeng.** {*;}
  258. -keep public class javax.**
  259. -keep public class android.webkit.**
  260. -dontwarn android.support.v4.**
  261. -keep enum com.facebook.**
  262. -keepattributes Exceptions,InnerClasses,Signature
  263. -keepattributes *Annotation*
  264. -keepattributes SourceFile,LineNumberTable
  265. -keep public interface com.facebook.**
  266. -keep public interface com.tencent.**
  267. -keep public interface com.umeng.socialize.**
  268. -keep public interface com.umeng.socialize.sensor.**
  269. -keep public interface com.umeng.scrshot.**
  270. -keep public class com.umeng.socialize.* {*;}
  271. -keep class com.facebook.**
  272. -keep class com.facebook.** { *; }
  273. -keep class com.umeng.scrshot.**
  274. -keep public class com.tencent.** {*;}
  275. -keep class com.umeng.socialize.sensor.**
  276. -keep class com.umeng.socialize.handler.**
  277. -keep class com.umeng.socialize.handler.*
  278. -keep class com.umeng.weixin.handler.**
  279. -keep class com.umeng.weixin.handler.*
  280. -keep class com.umeng.qq.handler.**
  281. -keep class com.umeng.qq.handler.*
  282. -keep class UMMoreHandler{*;}
  283. -keep class com.tencent.mm.sdk.modelmsg.WXMediaMessage {*;}
  284. -keep class com.tencent.mm.sdk.modelmsg.** implements com.tencent.mm.sdk.modelmsg.WXMediaMessage$IMediaObject {*;}
  285. -keep class im.yixin.sdk.api.YXMessage {*;}
  286. -keep class im.yixin.sdk.api.** implements im.yixin.sdk.api.YXMessage$YXMessageData{*;}
  287. -keep class com.tencent.mm.sdk.** {
  288. *;
  289. }
  290. -keep class com.tencent.mm.opensdk.** {
  291. *;
  292. }
  293. -keep class com.tencent.wxop.** {
  294. *;
  295. }
  296. -keep class com.tencent.mm.sdk.** {
  297. *;
  298. }
  299. -keep class com.twitter.** { *; }
  300. -keep class com.tencent.** {*;}
  301. -dontwarn com.tencent.**
  302. -keep class com.kakao.** {*;}
  303. -dontwarn com.kakao.**
  304. -keep public class com.umeng.com.umeng.soexample.R$*{
  305. public static final int *;
  306. }
  307. -keep public class com.linkedin.android.mobilesdk.R$*{
  308. public static final int *;
  309. }
  310. -keepclassmembers enum * {
  311. public static **[] values();
  312. public static ** valueOf(java.lang.String);
  313. }
  314. -keep class com.tencent.open.TDialog$*
  315. -keep class com.tencent.open.TDialog$* {*;}
  316. -keep class com.tencent.open.PKDialog
  317. -keep class com.tencent.open.PKDialog {*;}
  318. -keep class com.tencent.open.PKDialog$*
  319. -keep class com.tencent.open.PKDialog$* {*;}
  320. -keep class com.umeng.socialize.impl.ImageImpl {*;}
  321. -keep class com.sina.** {*;}
  322. -dontwarn com.sina.**
  323. -keep class com.alipay.share.sdk.** {
  324. *;
  325. }
  326. -keepnames class * implements android.os.Parcelable {
  327. public static final ** CREATOR;
  328. }
  329. -keep class com.linkedin.** { *; }
  330. -keep class com.android.dingtalk.share.ddsharemodule.** { *; }
  331. -keepattributes Signature
  332. #友盟
  333. -dontwarn okio.**
  334. -dontwarn com.squareup.okhttp.**
  335. -dontwarn okhttp3.**
  336. -dontwarn javax.annotation.**
  337. -dontwarn com.android.volley.toolbox.**
  338. -dontwarn com.facebook.infer.**
  339. -keepclassmembers class fqcn.of.javascript.interface.for.webview {
  340. public *;
  341. }
  342. -keepclassmembers class * extends android.webkit.webViewClient {
  343. public void *(android.webkit.WebView, java.lang.String, android.graphics.Bitmap);
  344. public boolean *(android.webkit.WebView, java.lang.String);
  345. }