# Add project specific ProGuard rules here. # You can control the set of applied configuration files using the # proguardFiles setting in build.gradle. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html # If your project uses WebView with JS, uncomment the following # and specify the fully qualified class name to the JavaScript interface # class: #-keepclassmembers class fqcn.of.javascript.interface.for.webview { # public *; #} # Uncomment this to preserve the line number information for # debugging stack traces. #-keepattributes SourceFile,LineNumberTable # If you keep the line number information, uncomment this to # hide the original source file name. #-renamesourcefileattribute SourceFile -keep public class * extends android.app.Activity #所有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 -keepclasseswithmembernames class * { native ; #保持 native 的方法不去混淆 } -keepclasseswithmembers class * { public (android.content.Context, android.util.AttributeSet); #保持自定义控件类不被混淆,指定格式的构造方法不去混淆 } -keep public class * extends android.view.View { #保持自定义控件指定规则的方法不被混淆 public (android.content.Context); public (android.content.Context, android.util.AttributeSet); public (android.content.Context, android.util.AttributeSet, int); public void set*(...); } -keep class * implements android.os.Parcelable { #保持 Parcelable 不被混淆(aidl文件不能去混淆) public static final android.os.Parcelable$Creator *; } -keepnames class * implements java.io.Serializable #需要序列化和反序列化的类不能被混淆(注:Java反射用到的类也不能被混淆) -dontwarn com.zhy.http.** -keep class com.zhy.http.*{*;} -dontwarn com.tencent.smtt.** -keep class com.tencent.smtt.*{*;} -dontwarn cn.muchinfo.rma.business.** -keep class cn.muchinfo.rma.business.*{*;} -dontwarn cn.muchinfo.rma.view.base.app.** -keep class cn.muchinfo.rma.view.base.app.*{*;} -dontwarn cn.muchinfo.rma.netManage.base -keep interface cn.muchinfo.rma.netManage.base.*{*;} -dontwarn cn.muchinfo.rma.netManage -keep class cn.muchinfo.rma.netManage.*{*;} #https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/README-CN.md -keep class com.blankj.utilcode.*{*;} -keepclassmembers class com.blankj.utilcode.*{*;} -dontwarn com.blankj.utilcode.** #okhttp -dontwarn okhttp3.** -keep class okhttp3.*{*;} #okio -dontwarn okio.** -keep class okio.*{*;} -dontwarn com.google.auto.** -keep class com.google.auto.* { *;} -dontwarn com.google.common.** -keep class com.google.common.*{*;} # 支付 -keep class com.alipay.android.app.IAlixPay{*;} -keep class com.alipay.android.app.IAlixPay$Stub{*;} -keep class com.alipay.android.app.IRemoteServiceCallback{*;} -keep class com.alipay.android.app.IRemoteServiceCallback$Stub{*;} -keep class com.alipay.sdk.app.PayTask{ public *;} -keep class com.alipay.sdk.app.AuthTask{ public *;} -keep class com.alipay.sdk.app.H5PayCallback { ; ; } -keep class com.alipay.android.phone.mrpc.core.* { *; } -keep class com.alipay.apmobilesecuritysdk.* { *; } -keep class com.alipay.mobile.framework.service.annotation.* { *; } -keep class com.alipay.mobilesecuritysdk.face.* { *; } -keep class com.alipay.tscenter.biz.rpc.* { *; } -keep class org.json.alipay.* { *; } -keep class com.alipay.tscenter.* { *; } -keep class com.ta.utdid2.* { *;} -keep class com.ut.device.* { *;} -dontwarn com.alipay.** -keepattributes *Annotation* -keepclassmembers class * { @org.greenrobot.eventbus.Subscribe ; } -keep enum org.greenrobot.eventbus.ThreadMode { *; } # Only required if you use AsyncExecutor -keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent { (java.lang.Throwable); } -dontwarn cn.muchinfo.rma.global.* -keep class cn.muchinfo.rma.global.*{*;} -keepattributes Signature # Gson specific classes -dontwarn sun.misc.** -keep class sun.misc.Unsafe.* { *; } # Application classes that will be serialized/deserialized over Gson -dontwarn com.google.gson.** -keep class com.google.gson.* { *; } -keep class com.google.gson.stream.* { *; }