File_Recovery/app/proguard-rules.pro

87 lines
2.4 KiB
Prolog

# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
# ========= Kotlin Parcelize =========
-keep class kotlinx.parcelize.Parcelize
-keep class kotlinx.android.parcel.Parcelize
-keepclassmembers class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
# ResultDataFiles Parcelable
-keep class com.ux.video.file.filerecovery.db.ResultDataFiles implements android.os.Parcelable {
<fields>;
<methods>;
}
-keepclassmembers class com.ux.video.file.filerecovery.db.ResultDataFiles {
public static final android.os.Parcelable$Creator CREATOR;
}
-keep class com.ux.video.file.filerecovery.db.ResultDataFiles { *; }
-keep class com.ux.video.file.filerecovery.db.ResultData { *; }
-keep enum com.ux.video.file.filerecovery.utils.FileType { *; }
-keep class com.ux.video.file.filerecovery.db.FileTypeConverter { *; }
-keep class io.objectbox.** { *; }
-keep @io.objectbox.annotation.Entity class * { *; }
# ResultDataFiles Parcelable
-keep class com.ux.video.file.filerecovery.db.ResultDataFiles implements android.os.Parcelable {
<fields>;
<methods>;
}
-keepclassmembers class com.ux.video.file.filerecovery.db.ResultDataFiles {
public static final android.os.Parcelable$Creator CREATOR;
}
# FileType enum
-keep enum com.ux.video.file.filerecovery.utils.FileType { *; }
# ObjectBox Converter
-keep class com.ux.video.file.filerecovery.db.FileTypeConverter { *; }
# ObjectBox
-keep class io.objectbox.** { *; }
-keep @io.objectbox.annotation.Entity class * { *; }
# Kotlin Parcelize support
-keep class kotlinx.parcelize.Parcelize
-keep class kotlinx.android.parcel.Parcelize
-keep class kotlin.Metadata { *; }
# 保留所有 Fragment 空构造函数
-keep class * extends androidx.fragment.app.Fragment {
public <init>();
}