1 # We have moved -dontobfuscate and -dontoptimize to the makefiles. 2 # dex does not like code run through proguard optimize and preverify steps. 3 # -dontoptimize 4 -dontpreverify 5 6 # Don't obfuscate. We only need dead code striping. 7 # -dontobfuscate 8 9 # Add this flag in your package's own configuration if it's needed. 10 #-flattenpackagehierarchy 11 12 # Keep classes and methods that have the guava @VisibleForTesting annotation 13 -keep @**.VisibleForTesting class * 14 -keepclassmembers class * { 15 @**.VisibleForTesting *; 16 } 17 18 # 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 49 -include proguard_basic_keeps.flags 50