blob: 6a43350ca6ded8ebfe7acf2a9ef14241affa7ec2 [file] [log] [blame]
-verbose
# Use ProGuard only to get rid of unused classes
-dontobfuscate
-dontoptimize
-keepattributes *
# Preverification was introduced in Java 6 to enable faster classloading, but
# dex doesn't use the java .class format, so it has no benefit and can cause
# problems.
-dontpreverify
# Skipping analysis of some classes may make proguard strip something that's
# needed.
-dontskipnonpubliclibraryclasses
# Parcel reflectively accesses this field.
-keepclassmembers class * implements android.os.Parcelable {
public static *** CREATOR;
}
# Don't warn about Nullable and NonNull annotations
-dontwarn org.jetbrains.annotations.*
# Unexpected reference to missing service class: META-INF/services/javax.annotation.processing.Processor.
-dontwarn javax.annotation.processing.Processor
# Keep PreferenceController constructors
-keepclassmembers public class * extends com.android.car.settings.common.PreferenceController {
public <init>(...);
}
# Keep QCItem constructors
-keepclassmembers public class * extends com.android.car.settings.qc.SettingsQCItem {
public <init>(...);
}
# Keep QCBackgroundWorker constructors
-keepclassmembers public class * extends com.android.car.settings.qc.SettingsQCBackgroundWorker {
public <init>(...);
}
# Keep fragments that are only created via xml
-keep public class * extends com.android.car.settings.common.SettingsFragment
-keep public class * extends com.android.car.settings.common.BaseFragment