#-ignorewarning -libraryjars libs/lib-drama-decoder-ffmpeg.aar -keep class com.localee.mireo.drama.declinedEzos.chromamc.** { ; } -keep class com.localee.mireo.drama.declinedEzos.uninitialized.** { ; } -keep class com.localee.mireo.drama.declinedEzos.yuvp.** { ; } -keep public class * extends android.view.View{ *** get*(); void set*(***); public (android.content.Context); public (android.content.Context, android.util.AttributeSet); public (android.content.Context, android.util.AttributeSet, int); } -keepclasseswithmembers class * { public (android.content.Context, android.util.AttributeSet); public (android.content.Context, android.util.AttributeSet, int); } -keepclassmembers class * { public void *(android.view.View); } #-ignorewarning -keep public class * extends androidx.appcompat.app.AppCompatActivity -keep public class * extends androidx.fragment.app.Fragment -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 * extends android.view.View -keep class android.support.** {*;} -keep interface android.support.** {*;} -keep public class * extends android.support.v4.** -keep public class * extends android.support.v7.** -keep public class * extends android.support.annotation.** -dontwarn android.support.** -keep class androidx.** {*;} -keep public class * extends androidx.** -keep interface androidx.** {*;} -keep class com.google.android.material.** {*;} -dontwarn androidx.** -dontwarn com.google.android.material.** -dontnote com.google.android.material.** -keepclasseswithmembernames class * { native ; } -keep public class * extends android.view.View{ *** get*(); void set*(***); public (android.content.Context); public (android.content.Context,android.util.AttributeSet); public (android.content.Context,android.util.AttributeSet,int); } -keepclasseswithmembers class * { public (android.content.Context, android.util.AttributeSet); public (android.content.Context, android.util.AttributeSet, int); } -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } -keep class * implements android.os.Parcelable { public static final android.os.Parcelable$Creator *; } -keep public class * implements java.io.Serializable {*;} -keepclassmembers class * implements java.io.Serializable { static final long serialVersionUID; private static final java.io.ObjectStreamField[] serialPersistentFields; private void writeObject(java.io.ObjectOutputStream); private void readObject(java.io.ObjectInputStream); java.lang.Object writeReplace(); java.lang.Object readResolve(); } -keep class **.R$* {*;} -keepclassmembers class * { void *(**On*Event); void *(**On*Listener); } -keepclassmembers class * extends android.webkit.WebViewClient { public void *(android.webkit.WebView, java.lang.String, android.graphics.Bitmap); public boolean *(android.webkit.WebView, java.lang.String); } -keepclassmembers class * extends android.webkit.WebViewClient { public void *(android.webkit.WebView, java.lang.String); } -keepclassmembers class * { public (org.json.JSONObject); } -keepattributes Signature -keepattributes InnerClasses -assumenosideeffects class android.util.Log { public static *** v(...); public static *** d(...); public static *** i(...); public static *** w(...); public static *** e(...); } -dontwarn kotlin.** -keep class kotlin.** { *; } -keep interface kotlin.** { *; } -keepclassmembers class kotlin.Metadata { public ; } -keepclasseswithmembers @kotlin.Metadata class * { *; } -keepclassmembers class **.WhenMappings { ; } -assumenosideeffects class kotlin.jvm.internal.Intrinsics { static void checkParameterIsNotNull(java.lang.Object, java.lang.String); } -keep class kotlinx.** { *; } -keep interface kotlinx.** { *; } -dontwarn kotlinx.** -keep class org.jetbrains.** { *; } -keep interface org.jetbrains.** { *; } -dontwarn org.jetbrains.** -keep public class * implements com.bumptech.glide.module.GlideModule -keep class * extends com.bumptech.glide.module.AppGlideModule { (...); } -keep public enum com.bumptech.glide.load.ImageHeaderParser$** { **[] $VALUES; public *; } -keep class com.bumptech.glide.load.data.ParcelFileDescriptorRewinder$InternalRewinder { *** rewind(); } -dontwarn org.bouncycastle.jsse.BCSSLParameters -dontwarn org.bouncycastle.jsse.BCSSLSocket -dontwarn org.bouncycastle.jsse.provider.BouncyCastleJsseProvider -dontwarn org.conscrypt.Conscrypt$Version -dontwarn org.conscrypt.Conscrypt -dontwarn org.conscrypt.ConscryptHostnameVerifier -dontwarn org.openjsse.javax.net.ssl.SSLParameters -dontwarn org.openjsse.javax.net.ssl.SSLSocket -dontwarn org.openjsse.net.ssl.OpenJSSE # ViewBinding -keepclassmembers class * implements androidx.viewbinding.ViewBinding { public static * inflate(android.view.LayoutInflater); } -dontwarn javax.annotation.** -dontwarn javax.inject.** -dontwarn okhttp3.logging.** -keep class okhttp3.internal.**{*;} -dontwarn okio.** -dontwarn retrofit2.** -keep class retrofit2.** { *; } -keepattributes Signature -keepattributes Exceptions -keep class com.google.gson.stream.** { *; } -keepattributes EnclosingMethod -keepattributes *Annotation* -keepclassmembers class * { @org.greenrobot.eventbus.Subscribe ; } -keep enum org.greenrobot.eventbus.ThreadMode { *; } -keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent { (java.lang.Throwable); } -if class androidx.credentials.CredentialManager -keep class androidx.credentials.playservices.** { *; } -keep class com.localee.mireo.app.http.api.** { ; } -keep class com.localee.mireo.app.http.response.** { ; } -keep class com.localee.mireo.app.http.model.** { ; } -keep class com.localee.mireo.app.http.exception.** { ; } -keep public class * extends android.view.View{ *** get*(); void set*(***); public (android.content.Context); public (android.content.Context, android.util.AttributeSet); public (android.content.Context, android.util.AttributeSet, int); } -keepclasseswithmembers class * { public (android.content.Context, android.util.AttributeSet); public (android.content.Context, android.util.AttributeSet, int); } -keepclassmembers class * { public void *(android.view.View); } -optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/* -optimizationpasses 5 -allowaccessmodification -dontpreverify -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -verbose # 不要删除无用代码 -dontshrink # 不混淆泛型 -keepattributes Signature # 不混淆注解类 -keepattributes *Annotation* # 不混淆本地方法 -keepclasseswithmembernames class * { native ; } # 不混淆 Activity 在 XML 布局所设置的 onClick 属性值 -keepclassmembers class * extends android.app.Activity { public void *(android.view.View); } # 不混淆枚举类 -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } # 不混淆 Parcelable 子类 -keepclassmembers class * implements android.os.Parcelable { public static final android.os.Parcelable$Creator CREATOR; } # 不混淆 Serializable 子类 -keepclassmembers class * implements java.io.Serializable { static final long serialVersionUID; private static final java.io.ObjectStreamField[] serialPersistentFields; !static !transient ; !private ; !private ; private void writeObject(java.io.ObjectOutputStream); private void readObject(java.io.ObjectInputStream); java.lang.Object writeReplace(); java.lang.Object readResolve(); } # 不混淆 R 文件中的字段 -keepclassmembers class **.R$* { public static ; } # 不混淆 WebView 设置的 JS 接口的方法名 -keepclassmembers class * { @android.webkit.JavascriptInterface ; }