blob: 6a43350ca6ded8ebfe7acf2a9ef14241affa7ec2 [file] [log] [blame]
eschiangbb088512022-06-01 11:53:25 -07001-verbose
2# Use ProGuard only to get rid of unused classes
3-dontobfuscate
4-dontoptimize
5-keepattributes *
6
7# Preverification was introduced in Java 6 to enable faster classloading, but
8# dex doesn't use the java .class format, so it has no benefit and can cause
9# problems.
10-dontpreverify
11
12# Skipping analysis of some classes may make proguard strip something that's
13# needed.
14-dontskipnonpubliclibraryclasses
15
16# Parcel reflectively accesses this field.
17-keepclassmembers class * implements android.os.Parcelable {
18 public static *** CREATOR;
19}
20
21# Don't warn about Nullable and NonNull annotations
22-dontwarn org.jetbrains.annotations.*
23
24# Unexpected reference to missing service class: META-INF/services/javax.annotation.processing.Processor.
25-dontwarn javax.annotation.processing.Processor
26
27# Keep PreferenceController constructors
28-keepclassmembers public class * extends com.android.car.settings.common.PreferenceController {
29 public <init>(...);
30}
31
32# Keep QCItem constructors
33-keepclassmembers public class * extends com.android.car.settings.qc.SettingsQCItem {
34 public <init>(...);
35}
36
37# Keep QCBackgroundWorker constructors
38-keepclassmembers public class * extends com.android.car.settings.qc.SettingsQCBackgroundWorker {
39 public <init>(...);
eschiang9a30a442022-06-13 11:15:26 -070040}
41
42# Keep fragments that are only created via xml
43-keep public class * extends com.android.car.settings.common.SettingsFragment
44-keep public class * extends com.android.car.settings.common.BaseFragment