diff --git a/Source/Android/app/proguard-rules.pro b/Source/Android/app/proguard-rules.pro index 769f7016fb..8c7ecd1d08 100644 --- a/Source/Android/app/proguard-rules.pro +++ b/Source/Android/app/proguard-rules.pro @@ -2,46 +2,6 @@ # than the space savings obfuscation could give us -dontobfuscate -# -# Kotlin Serialization -# - -# Keep `Companion` object fields of serializable classes. -# This avoids serializer lookup through `getDeclaredClasses` as done for named companion objects. --if @kotlinx.serialization.Serializable class ** --keepclassmembers class <1> { - static <1>$Companion Companion; -} - -# Keep `serializer()` on companion objects (both default and named) of serializable classes. --if @kotlinx.serialization.Serializable class ** { - static **$* *; -} --keepclassmembers class <2>$<3> { - kotlinx.serialization.KSerializer serializer(...); -} - -# Keep `INSTANCE.serializer()` of serializable objects. --if @kotlinx.serialization.Serializable class ** { - public static ** INSTANCE; -} --keepclassmembers class <1> { - public static <1> INSTANCE; - kotlinx.serialization.KSerializer serializer(...); -} - -# @Serializable and @Polymorphic are used at runtime for polymorphic serialization. --keepattributes RuntimeVisibleAnnotations,AnnotationDefault - -# Don't print notes about potential mistakes or omissions in the configuration for kotlinx-serialization classes -# See also https://github.com/Kotlin/kotlinx.serialization/issues/1900 --dontnote kotlinx.serialization.** - -# Serialization core uses `java.lang.ClassValue` for caching inside these specified classes. -# If there is no `java.lang.ClassValue` (for example, in Android), then R8/ProGuard will print a warning. -# However, since in this case they will not be used, we can disable these warnings --dontwarn kotlinx.serialization.internal.ClassValueReferences - # Required for R8 full mode -dontwarn org.bouncycastle.jsse.BCSSLParameters -dontwarn org.bouncycastle.jsse.BCSSLSocket