diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro new file mode 100644 index 0000000..a45c7ef --- /dev/null +++ b/app/proguard-rules.pro @@ -0,0 +1,31 @@ +# ProGuard rules for ESP32 ALDL Dashboard +# Compose + Room + Kotlin Serialization + Navigation3 + +# --- General --- +-keepattributes *Annotation* +-keepattributes Signature +-keepattributes InnerClasses +-keepattributes EnclosingMethod + +# --- Room --- +-keep class * extends androidx.room.RoomDatabase +-keep class * { @androidx.room.* ; } +-dontwarn androidx.room.paging.** + +# --- Kotlin Serialization --- +-keep class kotlinx.serialization.** { *; } +-keepclassmembers class ** { + static ** $$serializerInstance; +} + +# --- Compose / Navigation3 --- +-keep class androidx.navigation3.** { *; } +-keepclassmembers class * { + @androidx.compose.runtime.Composable ; +} + +# --- DataStore --- +-keep class androidx.datastore.** { *; } + +# --- Keep all app classes (safe starting point) --- +-keep class com.gronod.esp32aldldashboard.** { *; } \ No newline at end of file