blob: 50049cbdad3243bd73563eae1807960a2333a50a [file] [log] [blame]
Ying Wang7311a342013-08-21 18:32:49 -07001# We have moved -dontobfuscate and -dontoptimize to the makefiles.
Ying Wang3b2bdf12010-02-01 09:51:23 -08002# dex does not like code run through proguard optimize and preverify steps.
Ying Wang7311a342013-08-21 18:32:49 -07003# -dontoptimize
Ying Wang3b2bdf12010-02-01 09:51:23 -08004-dontpreverify
5
6# Don't obfuscate. We only need dead code striping.
Ying Wang7311a342013-08-21 18:32:49 -07007# -dontobfuscate
Ying Wang3b2bdf12010-02-01 09:51:23 -08008
9# Add this flag in your package's own configuration if it's needed.
10#-flattenpackagehierarchy
11
Ying Wang38cdd442013-05-30 10:45:46 -070012# Keep classes and methods that have the guava @VisibleForTesting annotation
Daichi Hironoe2a85aa2015-07-24 17:48:19 +090013-keep @**.VisibleForTesting class *
Ying Wang38cdd442013-05-30 10:45:46 -070014-keepclassmembers class * {
Daichi Hironoe2a85aa2015-07-24 17:48:19 +090015@**.VisibleForTesting *;
Ying Wang38cdd442013-05-30 10:45:46 -070016}
Ying Wang3b2bdf12010-02-01 09:51:23 -080017
Colin Cross38b48de2019-03-26 09:48:28 -070018# Understand the @Keep support annotation.
19-keep class android.support.annotation.Keep
20-keep class androidx.annotation.Keep
21
22-keep @android.support.annotation.Keep class * {*;}
23-keep @androidx.annotation.Keep class * {*;}
24
25-keepclasseswithmembers class * {
26 @android.support.annotation.Keep <methods>;
27}
28
29-keepclasseswithmembers class * {
30 @androidx.annotation.Keep <methods>;
31}
32
33-keepclasseswithmembers class * {
34 @android.support.annotation.Keep <fields>;
35}
36
37-keepclasseswithmembers class * {
38 @androidx.annotation.Keep <fields>;
39}
40
41-keepclasseswithmembers class * {
42 @android.support.annotation.Keep <init>(...);
43}
44
45-keepclasseswithmembers class * {
46 @androidx.annotation.Keep <init>(...);
47}
48
Ying Wang57453512013-05-17 10:02:00 -070049-include proguard_basic_keeps.flags