54 lines
1.3 KiB
Prolog
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.**
|