2025-07-09 18:24:08 +08:00
|
|
|
|
-keep class com.google.gson.** { *; }
|
|
|
|
|
-keep class com.google.gson.stream.** { *; }
|
|
|
|
|
|
|
|
|
|
# 保留所有注解
|
|
|
|
|
-keepattributes *Annotation*
|
|
|
|
|
-keepattributes Signature
|
|
|
|
|
|
|
|
|
|
# 保留枚举类
|
|
|
|
|
-keepclassmembers enum * {
|
|
|
|
|
public static **[] values();
|
|
|
|
|
public static ** valueOf(java.lang.String);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# 保留所有模型类(根据你的包结构调整)
|
|
|
|
|
-keep class com.android.grape.pad.** { *; }
|
2025-07-15 17:53:06 +08:00
|
|
|
|
-keep class com.android.grape.data.** { *; }
|
2025-07-09 18:24:08 +08:00
|
|
|
|
-keep class com.android.grape.net.ApiResponse{ *; }
|
|
|
|
|
-keep class com.android.grape.net.ApiResponseList{ *; }
|
|
|
|
|
|
|
|
|
|
# 保留所有使用 @SerializedName 注解的字段
|
|
|
|
|
-keepclassmembers class * {
|
|
|
|
|
@com.google.gson.annotations.SerializedName <fields>;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# 保留所有模型类的无参构造函数
|
|
|
|
|
-keepclassmembers class com.android.grape.pad.** {
|
|
|
|
|
public <init>();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# 保留类型适配器
|
|
|
|
|
-keep class * extends com.google.gson.TypeAdapter {
|
|
|
|
|
public com.google.gson.TypeAdapter create(com.google.gson.Gson, com.google.gson.reflect.TypeToken);
|
|
|
|
|
}
|
|
|
|
|
# 保留 Gson 创建的类
|
|
|
|
|
-keep class com.google.gson.examples.android.model.** { *; }
|
|
|
|
|
-keepattributes Signature
|
|
|
|
|
|
|
|
|
|
# 保留 TypeToken 类及其子类
|
|
|
|
|
-keep class com.google.gson.reflect.TypeToken { *; }
|
|
|
|
|
-keep class * extends com.google.gson.reflect.TypeToken
|
|
|
|
|
|
|
|
|
|
-keep class sun.misc.Unsafe { *; }
|
|
|
|
|
|
|
|
|
|
# 保留注解信息
|
|
|
|
|
-keepattributes *Annotation*
|
|
|
|
|
|
|
|
|
|
# 保留 Kotlin 元数据(如果使用 Kotlin)
|
|
|
|
|
-keepclassmembers class **$TypeToken { *; }
|