30 行
1.3 KiB
Prolog
30 行
1.3 KiB
Prolog
# ── Public API entry points ───────────────────────────────────────────────────
|
|
-keep public class com.xuqm.sdk.XuqmSDK { public *; }
|
|
-keep public class com.xuqm.sdk.XuqmLoginSession { public *; }
|
|
-keep public class com.xuqm.sdk.XuqmUserInfo { public *; }
|
|
-keep public class com.xuqm.sdk.core.** { public *; }
|
|
-keep public class com.xuqm.sdk.file.FileSDK { public *; }
|
|
-keep public class com.xuqm.sdk.file.FileUploadResult { public *; }
|
|
|
|
# Compose UI components referenced directly by consumers
|
|
-keep public class com.xuqm.sdk.ui.** { public *; }
|
|
|
|
# ContentProviders: class names referenced in AndroidManifest — must not be renamed
|
|
-keep class com.xuqm.sdk.internal.XuqmInitializerProvider
|
|
-keep class com.xuqm.sdk.internal.XuqmMergedProvider
|
|
|
|
# Kotlin & Annotation metadata
|
|
-keepattributes *Annotation*, Signature, InnerClasses, EnclosingMethod
|
|
|
|
# Kotlinx serialization
|
|
-keepclassmembers @kotlinx.serialization.Serializable class ** { *; }
|
|
-keep class kotlinx.serialization.** { *; }
|
|
|
|
# Gson field names used in network models
|
|
-keepclassmembers class com.xuqm.sdk.** {
|
|
@com.google.gson.annotations.SerializedName <fields>;
|
|
}
|
|
|
|
# Retrofit: keep service interfaces
|
|
-keep,allowobfuscation interface com.xuqm.sdk.network.** { *; }
|