kv-netflix/android-tv/app/proguard-rules.pro

54 lines
1.3 KiB
Prolog

# ProGuard rules for StreamFlow TV
# Keep all app classes (safety net)
-keep class com.streamflow.tv.** { *; }
-keepclassmembers class com.streamflow.tv.** { *; }
# Moshi
-keep class com.squareup.moshi.** { *; }
-keepclassmembers class * {
@com.squareup.moshi.Json <fields>;
}
-keepclassmembers class * {
@com.squareup.moshi.JsonClass <fields>;
}
# Kotlin Metadata (critical for Moshi reflection adapter)
-keep class kotlin.Metadata { *; }
-keepattributes RuntimeVisibleAnnotations
-keepattributes RuntimeInvisibleAnnotations
-keepattributes *Annotation*
# Retrofit
-dontwarn retrofit2.**
-keep class retrofit2.** { *; }
-keepattributes Signature
-keepattributes Exceptions
-keepclassmembers,allowshrinking,allowobfuscation interface * {
@retrofit2.http.* <methods>;
}
# OkHttp
-dontwarn okhttp3.**
-dontwarn okio.**
-keep class okhttp3.** { *; }
-keep class okio.** { *; }
# Kotlin Coroutines
-keepnames class kotlinx.coroutines.internal.MainDispatcherFactory {}
-keepnames class kotlinx.coroutines.CoroutineExceptionHandler {}
-keepclassmembers class kotlinx.** {
volatile <fields>;
}
# Coil
-dontwarn coil.**
-keep class coil.** { *; }
# AndroidX Compose
-keep class androidx.compose.** { *; }
-dontwarn androidx.compose.**
# ExoPlayer / Media3
-keep class androidx.media3.** { *; }
-dontwarn androidx.media3.**