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