mirror of
https://github.com/tachiyomiorg/tachiyomi.git
synced 2024-11-05 17:35:06 +01:00
bdb55ef881
- Disable optimizations on eu.kanade.tachiyomi.source.** classes to avoid access modifications causing mismatches between the app and extensions - Remove Gson and Kotson Proguard rules, since we don't have those dependencies anymore
61 lines
2.5 KiB
Prolog
61 lines
2.5 KiB
Prolog
-dontobfuscate
|
|
|
|
# Keep extension's common dependencies
|
|
-keep class eu.kanade.tachiyomi.source.** { public protected *; } # Avoid access modification
|
|
-keep,allowoptimization class eu.kanade.tachiyomi.** { public protected *; }
|
|
-keep,allowoptimization class androidx.preference.** { *; }
|
|
-keep,allowoptimization class kotlin.** { public protected *; }
|
|
-keep,allowoptimization class kotlinx.coroutines.** { public protected *; }
|
|
-keep,allowoptimization class okhttp3.** { public protected *; }
|
|
-keep,allowoptimization class okio.** { public protected *; }
|
|
-keep,allowoptimization class rx.** { public protected *; }
|
|
-keep,allowoptimization class org.jsoup.** { public protected *; }
|
|
-keep,allowoptimization class com.squareup.duktape.** { public protected *; }
|
|
-keep,allowoptimization class app.cash.quickjs.** { public protected *; }
|
|
-keep,allowoptimization class uy.kohesive.injekt.** { public protected *; }
|
|
|
|
##---------------Begin: proguard configuration for RxJava 1.x ----------
|
|
-dontwarn sun.misc.**
|
|
|
|
-keepclassmembers class rx.internal.util.unsafe.*ArrayQueue*Field* {
|
|
long producerIndex;
|
|
long consumerIndex;
|
|
}
|
|
|
|
-keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef {
|
|
rx.internal.util.atomic.LinkedQueueNode producerNode;
|
|
}
|
|
|
|
-keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueConsumerNodeRef {
|
|
rx.internal.util.atomic.LinkedQueueNode consumerNode;
|
|
}
|
|
|
|
-dontnote rx.internal.util.PlatformDependent
|
|
##---------------End: proguard configuration for RxJava 1.x ----------
|
|
|
|
##---------------Begin: proguard configuration for kotlinx.serialization ----------
|
|
-keepattributes *Annotation*, InnerClasses
|
|
-dontnote kotlinx.serialization.AnnotationsKt # core serialization annotations
|
|
|
|
# kotlinx-serialization-json specific. Add this if you have java.lang.NoClassDefFoundError kotlinx.serialization.json.JsonObjectSerializer
|
|
-keepclassmembers class kotlinx.serialization.json.** {
|
|
*** Companion;
|
|
}
|
|
-keepclasseswithmembers class kotlinx.serialization.json.** {
|
|
kotlinx.serialization.KSerializer serializer(...);
|
|
}
|
|
|
|
-keep,includedescriptorclasses class eu.kanade.tachiyomi.**$$serializer { *; }
|
|
-keepclassmembers class eu.kanade.tachiyomi.** {
|
|
*** Companion;
|
|
}
|
|
-keepclasseswithmembers class eu.kanade.tachiyomi.** {
|
|
kotlinx.serialization.KSerializer serializer(...);
|
|
}
|
|
|
|
-keep class kotlinx.serialization.**
|
|
-keepclassmembers class kotlinx.serialization.** {
|
|
<methods>;
|
|
}
|
|
##---------------End: proguard configuration for kotlinx.serialization ----------
|