45 lines
1.3 KiB
Prolog
45 lines
1.3 KiB
Prolog
# ProGuard / R8 Rules for DripZone Native Kotlin App
|
|
|
|
# Preserve model classes used for JSON serialization/deserialization
|
|
-keepclassmembers class * implements java.io.Serializable {
|
|
static final long serialVersionUID;
|
|
private static final java.io.ObjectStreamField[] serialPersistentFields;
|
|
!static !transient <fields>;
|
|
!private <fields>;
|
|
!private <methods>;
|
|
private void writeObject(java.io.ObjectOutputStream);
|
|
private void readObject(java.io.ObjectInputStream);
|
|
java.lang.Object writeReplace();
|
|
java.lang.Object readResolve();
|
|
}
|
|
|
|
# Keep DripZone Data Models
|
|
-keep class co.dripzone.app.model.** { *; }
|
|
-keepclassmembers class co.dripzone.app.model.** { *; }
|
|
|
|
# Gson specific rules
|
|
-keepattributes Signature
|
|
-keepattributes *Annotation*
|
|
-dontwarn sun.misc.**
|
|
-keep class com.google.gson.** { *; }
|
|
|
|
# OkHttp & Coroutines
|
|
-dontwarn okhttp3.**
|
|
-dontwarn okio.**
|
|
-keep class okhttp3.** { *; }
|
|
-keep interface okhttp3.** { *; }
|
|
-dontwarn kotlinx.coroutines.**
|
|
|
|
# Glide
|
|
-keep public class * implements com.bumptech.glide.module.GlideModule
|
|
-keep class * extends com.bumptech.glide.module.AppGlideModule {
|
|
<init>(...);
|
|
}
|
|
-keep public enum com.bumptech.glide.load.ImageHeaderParser$** {
|
|
**[] $VALUES;
|
|
public *;
|
|
}
|
|
|
|
# Android Security Crypto
|
|
-keepnames class androidx.security.crypto.** { *; }
|