1 # This is a configuration file for ProGuard.
2 # http://proguard.sourceforge.net/index.html#manual/usage.html
4 # Keep all Fragments in this package, which are used by reflection.
5 -keep public class com.android.settings.** extends android.app.Fragment
6 -keep public class com.android.settings.cyanogenmod.superuser.**
7 -keep public class com.koushikdutta.**
9 # Keep all preference controllers needed by slice and DashboardFragment.
10 -keep class * extends com.android.settings.core.BasePreferenceController {
14 -keep class * extends com.android.settings.core.TogglePreferenceController {
18 # We want to keep methods in Activity that could be used in the XML attribute onClick.
19 -keepclassmembers class * extends android.app.Activity {
20 public void *(android.view.View);
21 public void *(android.view.MenuItem);
24 # Keep setters in Views so that animations can still work.
25 -keep public class * extends android.view.View {
26 public <init>(android.content.Context);
27 public <init>(android.content.Context, android.util.AttributeSet);
28 public <init>(android.content.Context, android.util.AttributeSet, int);
34 # Keep classes that may be inflated from XML.
35 -keepclasseswithmembers class * {
36 public <init>(android.content.Context, android.util.AttributeSet);
38 -keepclasseswithmembers class * {
39 public <init>(android.content.Context, android.util.AttributeSet, int);
41 -keepclasseswithmembers class * {
42 public <init>(android.content.Context, android.util.AttributeSet, int, int);
45 # Keep annotated classes or class members.
46 -keep @android.support.annotation.Keep class *
47 -keepclassmembers class * {
48 @android.support.annotation.Keep *;
51 # Keep specific fields used via reflection.
52 -keepclassmembers class * {
53 public static ** SEARCH_INDEX_DATA_PROVIDER;
54 public static ** SUMMARY_PROVIDER_FACTORY;
56 -keep class android.support.v4.app.CoreComponentFactory