# 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 -verbose #指定压缩级别 -optimizationpasses 5 #混淆时应用侵入式重载 -overloadaggressively #使用字符串"SourceFile"来替代真正的类 -renamesourcefileattribute SourceFile #抛出异常时保留代码行号 -keepattributes SourceFile,LineNumberTable # 混淆时所采用的算法 -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* #包名不混合大小写 -dontusemixedcaseclassnames #把混淆类中的方法名也混淆了 -useuniqueclassmembernames #优化时允许访问并修改有修饰符的类和类的成员 -allowaccessmodification #将混淆过得类移到根目录下 -repackageclasses -keepclasseswithmembernames class * { native ; } #保留资源文件 -keepclassmembers class **.R$* { public static ; } # The support library contains references to newer platform versions. # Don't warn about those in case this app is linking against an older # platform version. We know about them, and they are safe. -dontwarn android.support.** -keep public class com.google.android.gms.* { public *; } -dontwarn com.google.android.gms.** -keep class * extends java.util.ListResourceBundle { protected Object[][] getContents(); } -keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable { public static final *** NULL; } -keepnames @com.google.android.gms.common.annotation.KeepName class * -keepclassmembernames class * { @com.google.android.gms.common.annotation.KeepName *; } -keepnames class * implements android.os.Parcelable { public static final ** CREATOR; } # 保留bolts下的所有类及其内部类 -keep class bolts.** {*;} -dontwarn bolts.** # 保留fastjson下的所有类及其内部类 -keep class com.alibaba.fastjson.** {*;} -dontwarn com.alibaba.fastjson.** # 保留com.android.vending.billing下的所有类及其内部类 -keep class com.android.vending.billing.** {*;} -dontwarn com.android.vending.billing.** # 保留applovin下的所有类及其内部类 -keep class com.applovin.** {*;} -dontwarn com.applovin.** # 保留appsflyer下的所有类及其内部类 -keep class com.appsflyer.** {*;} -dontwarn com.appsflyer.** # 保留avos下的所有类及其内部类 -keep class com.avos.** {*;} -dontwarn com.avos.** # 保留avoscloud下的所有类及其内部类 -keep class com.avoscloud.** {*;} -dontwarn com.avoscloud.** # 保留avoscloud_gcm下的所有类及其内部类 -keep class com.avoscloud_gcm.** {*;} -dontwarn com.avoscloud_gcm.** -keep class com.mopub.** {*;} -dontwarn com.mopub.** -keep class org.xmlpull.** {*;} -dontwarn org.xmlpull.** # 保留facebook下的所有类及其内部类 -keep class com.facebook.** {*;} -dontwarn com.facebook.** # 保留flurry下的所有类及其内部类 -keep class com.flurry.** {*;} -dontwarn com.flurry.** # 保留google下的所有类及其内部类 -keep class com.google.** {*;} -dontwarn com.google.** # 保留picasso下的所有类及其内部类 -keep class com.squareup.picasso.** {*;} -dontwarn com.squareup.picasso.** # 保留bugly下的所有类及其内部类 -keep class com.tencent.bugly.** {*;} -dontwarn com.tencent.bugly.** # 保留unity3d下的所有类及其内部类 -keep class com.unity3d.ads.** {*;} -dontwarn com.unity3d.ads.** # 保留httpclient下的所有类及其内部类 -keep class cz.msebera.** {*;} -dontwarn cz.msebera.** # 保留async http下的所有类及其内部类 -keep class com.loopj.android.http.** {*;} -dontwarn com.loopj.android.http.** -keep class android.net.**{*;} -dontwarn android.net.** -keep class android.util.**{*;} -dontwarn android.util.** -keep class org.apache.http.** {*;} -dontwarn org.apache.http.** -keep class okhttp3.** {*;} -dontwarn okhttp3.** -keep class okio.** {*;} -dontwarn okio.** -keep class org.cocos2dx.** {*;} -dontwarn org.cocos2dx.** -keep class com.millennialmedia.** {*;} -dontwarn com.millennialmedia.** -keep class com.liulishuo.filedownloader.** {*;} -dontwarn com.liulishuo.filedownloader.** -keep class com.github.siyamed.** {*;} -dontwarn com.github.siyamed.** -keep class com.custom.** {*;} -dontwarn com.custom.** -keep class com.vungle.publisher.** {*;} -dontwarn com.vungle.publisher.** -keep class dagger.** {*;} -dontwarn dagger.** -keep class de.greenrobot.event.** {*;} -dontwarn de.greenrobot.event.** -keep class javax.inject.** {*;} -dontwarn javax.inject.** -keep class rx.** {*;} -dontwarn rx.** -keep class rx.adjust.** {*;} -dontwarn rx.adjust.** -keep class dalvik.system.** {*;} -dontwarn dalvik.system.** -keep class android.os.** {*;} -dontwarn android.os.** -keep class android.content.** {*;} -dontwarn android.content.** -keep class com.google.android.** {*;} -dontwarn com.google.android.** -keep class com.inmobi.** { *; } -dontwarn com.inmobi.** # Vungle -keep class com.vungle.** { *; } -dontwarn com.vungle.** # Moat SDK -keep class com.moat.** { *; } -dontwarn com.moat.** -keep class android.** { *; } -dontwarn android.** -keep class com.android.** {*;} -dontwarn com.android.** # Okio -dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement # Retrofit -dontwarn okio.** -dontwarn retrofit2.Platform$Java8 # Gson -keepattributes Signature -keepattributes *Annotation* -dontwarn sun.misc.** -keep class com.google.gson.examples.android.model.** { *; } -keep class * implements com.google.gson.TypeAdapterFactory -keep class * implements com.google.gson.JsonSerializer -keep class * implements com.google.gson.JsonDeserializer #ironsource -keep class com.ironsource.** { *;} -dontwarn com.ironsource.** #inmobi -keep class com.inmobi.** { *; } -dontwarn com.inmobi.** -keep class com.integralads.** { *; } -dontwarn com.integralads.** -keep class com.moat.** { *; } -dontwarn com.moat.** #mobvista -keepattributes Signature -keepattributes *Annotation* -keep class com.mintegral.** {*; } -keep interface com.mintegral.** {*; } -keep class android.support.v4.** { *; } -dontwarn com.mintegral.** -keep class **.R$* { public static final int mintegral*; } -keep class com.alphab.** {*; } -keep interface com.alphab.** {*; } #Adcolony -keep class com.adcolony.** {*; } -dontwarn com.adcolony.** -keepclassmembers class * { @android.webkit.JavascriptInterface ; } #Tapjoy -keep class com.tapjoy.** { *; } -keepattributes JavascriptInterface -keepattributes *Annotation* -keep class * extends java.util.ListResourceBundle { protected Object[][] getContents(); } -keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable { public static final *** NULL; } -keepnames @com.google.android.gms.common.annotation.KeepName class * -keepclassmembernames class * { @com.google.android.gms.common.annotation.KeepName *; } -keepnames class * implements android.os.Parcelable { public static final ** CREATOR; } -keep class com.google.android.gms.ads.identifier.** { *; } -dontwarn com.tapjoy.** # 更新 unity3d下的所有类及其内部类 -keep class com.unity3d.** {*;} -dontwarn com.unity3d.** #Fyber -keep class com.heyzap.** {*;} -keep class com.fyber.** {*;} -dontwarn com.heyzap.** -dontwarn com.fyber.** -keep class androidx.** {*;} -dontwarn androidx.** -keep class com.plugins.lib.base.SharedPreferencesUtils {*;} -keep class com.plugin.analytics.AnalyticsControl {*;} # 保留chartboost 新添加 -keep class com.chartboost.** {*;} -dontwarn com.chartboost.** -keep class com.chartboost_helium.** {*;} -dontwarn com.chartboost_helium.** -keep class com.moat.** {*;} -dontwarn com.moat.** -keepattributes *Annotation* -keepclassmembers class ** { @org.greenrobot.eventbus.Subscribe ; } -keep class org.greenrobot.** {*;} -dontwarn org.greenrobot.** -keep enum org.greenrobot.eventbus.ThreadMode { *; } #vungle更新=========== # Vungle -keep class com.vungle.** { *; } -dontwarn com.vungle.** -keep class com.vungle.warren.downloader.DownloadRequest -dontwarn com.vungle.warren.error.VungleError$ErrorCode -dontwarn com.vungle.warren.downloader.DownloadRequest$Status -keepclassmembers enum com.vungle.warren.** { *; } # Moat SDK -keep class com.moat.** { *; } -dontwarn com.moat.** -dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement -keepattributes *Annotation* # Retrofit -keepattributes Signature, InnerClasses -dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement -dontwarn javax.annotation.** -dontwarn kotlin.Unit -dontwarn retrofit2.-KotlinExtensions # Okio+OkHttp -dontwarn okhttp3.** -dontwarn okio.** -dontwarn javax.annotation.** -dontwarn org.conscrypt.** -keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase #======================================= #穿山甲=============================== -keep class com.bytedance.** {*;} -keep class com.androidquery.** {*;} -keep class com.ss.** {*;} -keep class com.com.bytedance.** {*;} -dontwarn com.androidquery.** -dontwarn com.ss.** -dontwarn com.com.bytedance.** -dontwarn com.bytedance.** -keep public interface com.bytedance.sdk.openadsdk.downloadnew.** {*;} #======================================= #Display #======================================= -keep class com.brandio.** { *;} -dontwarn com.brandio.** -keep class iab.omid.**{ *;} -dontwarn iab.omid.** #======================================= #GDTAD #======================================= -keep class com.qq.e.** { *;} -dontwarn com.qq.e.** #======================================= ##sigmob========= -keep class com.google.android.material.** {*;} -keep class androidx.** {*;} -keep public class * extends androidx.** -keep interface androidx.** {*;} -dontwarn com.google.android.material.** -dontnote com.google.android.material.** -dontwarn androidx.** -keep class sun.misc.Unsafe { *; } -dontwarn com.sigmob.** -keep class com.sigmob.**.**{*;} -keep class com.bun.miitmdid.core.** {*;} -dontwarn com.bun.miitmdid.core.** ##END sigmob========= ##KuaiShou========= -keep class org.chromium.** {*;} -keep class org.chromium.** { *; } -keep class aegon.chrome.** { *; } -keep class com.kwai.**{ *; } -keep class com.kwad.**{ *; } -dontwarn com.kwai.** -dontwarn com.kwad.** -dontwarn com.ksad.** -dontwarn aegon.chrome.** ##END KuaiShou====