From 98f22d6bca91e9cc26963c70f86925a1addf8f40 Mon Sep 17 00:00:00 2001 From: fankesyooni Date: Mon, 3 Oct 2022 01:32:27 +0800 Subject: [PATCH] Update proguard-rules.pro --- app/proguard-rules.pro | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index aeaddaa..825bd6e 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -34,6 +34,31 @@ -renamesourcefileattribute P -keepattributes SourceFile,LineNumberTable +## ---------------Begin: proguard configuration for Gson ---------- +# Gson uses generic type information stored in a class file when working with fields. Proguard +# removes such information by default, so configure it to keep all of it. + +# Gson specific classes +-dontwarn sun.misc** +-keep class com.google.gson.stream**{*;} + +# Application classes that will be serialized/deserialized over Gson +-keep class com.google.gson.examples.android.model** { ; } + +# Prevent proguard from stripping interface information from TypeAdapter, TypeAdapterFactory, +# JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter) +-keep class * implements com.google.gson.TypeAdapter +-keep class * implements com.google.gson.TypeAdapterFactory +-keep class * implements com.google.gson.JsonSerializer +-keep class * implements com.google.gson.JsonDeserializer + +# Prevent R8 from leaving Data object members always null +-keepclassmembers,allowobfuscation class * { + @com.google.gson.annotations.SerializedName ; +} + +## ---------------End: proguard configuration for Gson ---------- + -assumenosideeffects class kotlin.jvm.internal.Intrinsics { public static *** throwUninitializedProperty(...); public static *** throwUninitializedPropertyAccessException(...);