140 lines
4.1 KiB
Prolog
140 lines
4.1 KiB
Prolog
# 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
|
||
# 保留Processor类,这些类用于在编译时生成ObjectBox需要的代码
|
||
-keep @io.objectbox.annotation.processor.Processor class * {
|
||
*;
|
||
}
|
||
|
||
# 保留ObjectBox的关键方法和构造函数
|
||
-keepclassmembers class * extends io.objectbox.Box {
|
||
<init>(...);
|
||
<methods>;
|
||
}
|
||
|
||
-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();
|
||
|
||
}
|
||
|
||
|
||
#---------------------------------------------Topon
|
||
# Vungle
|
||
-dontwarn com.vungle.ads.**
|
||
-keepclassmembers class com.vungle.ads.** {
|
||
*;
|
||
}
|
||
|
||
|
||
|
||
|
||
# Google
|
||
-keep class com.google.android.gms.** { *; }
|
||
-dontwarn com.google.android.gms.**
|
||
|
||
|
||
|
||
|
||
# START OkHttp + Okio
|
||
# JSR 305 annotations are for embedding nullability information.
|
||
-dontwarn javax.annotation.**
|
||
|
||
|
||
# A resource is loaded with a relative path so the package of this class must be preserved.
|
||
-adaptresourcefilenames okhttp3/internal/publicsuffix/PublicSuffixDatabase.gz
|
||
|
||
|
||
# Animal Sniffer compileOnly dependency to ensure APIs are compatible with older versions of Java.
|
||
-dontwarn org.codehaus.mojo.animal_sniffer.*
|
||
|
||
|
||
# OkHttp platform used only on JVM and when Conscrypt and other security providers are available.
|
||
-dontwarn okhttp3.internal.platform.**
|
||
-dontwarn org.conscrypt.**
|
||
-dontwarn org.bouncycastle.**
|
||
-dontwarn org.openjsse.**
|
||
|
||
|
||
# Animal Sniffer compileOnly dependency to ensure APIs are compatible with older versions of Java.
|
||
-dontwarn org.codehaus.mojo.animal_sniffer.*
|
||
|
||
|
||
# END OkHttp + Okio
|
||
|
||
|
||
# START Protobuf
|
||
-dontwarn com.google.protobuf.**
|
||
-keepclassmembers class com.google.protobuf.** {
|
||
*;
|
||
}
|
||
-keep class * extends com.google.protobuf.GeneratedMessageLite { *; }
|
||
|
||
|
||
# END Protobuf
|
||
-keepclassmembers class com.ironsource.sdk.controller.IronSourceWebView$JSInterface {
|
||
public *;
|
||
}
|
||
-keepclassmembers class * implements android.os.Parcelable {
|
||
public static final android.os.Parcelable$Creator *;
|
||
}
|
||
-keep public class com.google.android.gms.ads.** {
|
||
public *;
|
||
}
|
||
-keep class com.ironsource.adapters.** { *;
|
||
}
|
||
-dontwarn com.ironsource.mediationsdk.**
|
||
-dontwarn com.ironsource.adapters.**
|
||
-keepattributes JavascriptInterface
|
||
-keepclassmembers class * {
|
||
@android.webkit.JavascriptInterface <methods>;
|
||
}
|
||
-keep class com.bytedance.sdk.** { *; }
|
||
-keepattributes Signature
|
||
-keepattributes *Annotation*
|
||
-keep class com.mbridge.** {*; }
|
||
-keep interface com.mbridge.** {*; }
|
||
-keep class android.support.v4.** { *; }
|
||
-dontwarn com.mbridge.**
|
||
-keep class **.R$* { public static final int mbridge*; }
|
||
-keep public class com.mbridge.* extends androidx.** { *; }
|
||
-keep public class androidx.viewpager.widget.PagerAdapter{ *; }
|
||
-keep public class androidx.viewpager.widget.ViewPager.OnPageChangeListener{ *; }
|
||
-keep interface androidx.annotation.IntDef{ *; }
|
||
-keep interface androidx.annotation.Nullable{ *; }
|
||
-keep interface androidx.annotation.CheckResult{ *; }
|
||
-keep interface androidx.annotation.NonNull{ *; }
|
||
-keep public class androidx.fragment.app.Fragment{ *; }
|
||
-keep public class androidx.core.content.FileProvider{ *; }
|
||
-keep public class androidx.core.app.NotificationCompat{ *; }
|
||
-keep public class androidx.appcompat.widget.AppCompatImageView { *; }
|
||
-keep public class androidx.recyclerview.*{ *; }
|
||
#---------------------------------------------Topon |