-
Notifications
You must be signed in to change notification settings - Fork 17
/
proguard-project.txt
127 lines (95 loc) · 3.83 KB
/
proguard-project.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
###############################################################################
# General settings.
###############################################################################
-verbose
# We can debug the ProGuard configuration by instrumenting the code and
# checking the log for feedback. Disable the option again for actual releases!
#-addconfigurationdebugging
# We can also disable the individual processing steps.
#-dontshrink
#-dontoptimize
#-dontobfuscate
# Specifically target Android.
-android
###############################################################################
# Settings to handle reflection in the code.
###############################################################################
# Preserve annotated and generated classes for Dagger.
-keepclassmembers,allowobfuscation class * {
@dagger.** *;
}
-keep class **$$ModuleAdapter
-keep class **$$InjectAdapter
-keep class **$$StaticInjection
-if class **$$ModuleAdapter
-keep class <1>
-if class **$$InjectAdapter
-keep class <1>
-if class **$$StaticInjection
-keep class <1>
-keepnames class dagger.Lazy
# Preserve annotated and generated classes for Butterknife.
-keep class **$$ViewBinder {
public static void bind(...);
public static void unbind(...);
}
-if class **$$ViewBinder
-keep class <1>
-keep class **_ViewBinding {
<init>(<1>, android.view.View);
}
-if class **_ViewBinding
-keep class <1>
# Preserve fields that are serialized with GSON.
#-keepclassmembers class com.example.SerializedClass1,
# com.example.SerializedClass2 {
# <fields>;
#}
-keepclassmembers,allowobfuscation class * {
@com.google.gson.annotations.SerializedName <fields>;
}
-keep,allowobfuscation @interface com.google.gson.annotations.**
###############################################################################
# Further optimizations.
###############################################################################
# If you wish, you can let the optimization step remove Android logging calls.
#-assumenosideeffects class android.util.Log {
# public static boolean isLoggable(java.lang.String, int);
# public static int v(...);
# public static int i(...);
# public static int w(...);
# public static int d(...);
# public static int e(...);
#}
# In that case, it's especially useful to also clean up any corresponding
# string concatenation calls.
-assumenoexternalsideeffects class java.lang.StringBuilder {
public java.lang.StringBuilder();
public java.lang.StringBuilder(int);
public java.lang.StringBuilder(java.lang.String);
public java.lang.StringBuilder append(java.lang.Object);
public java.lang.StringBuilder append(java.lang.String);
public java.lang.StringBuilder append(java.lang.StringBuffer);
public java.lang.StringBuilder append(char[]);
public java.lang.StringBuilder append(char[], int, int);
public java.lang.StringBuilder append(boolean);
public java.lang.StringBuilder append(char);
public java.lang.StringBuilder append(int);
public java.lang.StringBuilder append(long);
public java.lang.StringBuilder append(float);
public java.lang.StringBuilder append(double);
public java.lang.String toString();
}
-assumenoexternalreturnvalues class java.lang.StringBuilder {
public java.lang.StringBuilder append(java.lang.Object);
public java.lang.StringBuilder append(java.lang.String);
public java.lang.StringBuilder append(java.lang.StringBuffer);
public java.lang.StringBuilder append(char[]);
public java.lang.StringBuilder append(char[], int, int);
public java.lang.StringBuilder append(boolean);
public java.lang.StringBuilder append(char);
public java.lang.StringBuilder append(int);
public java.lang.StringBuilder append(long);
public java.lang.StringBuilder append(float);
public java.lang.StringBuilder append(double);
}