• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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