platform_build/core/proguard.flags
Colin Cross 38b48debc5 Understand the support library/androidx @Keep annotations
Copied from tools/base/build-system/gradle-core/src/main/resources/com/android/build/gradle/proguard-common.txt.

Fixes: 129311848
Test: none
Change-Id: Ie8b40b416c8772a550bb4d1f7bd6e7e944cdd166
2019-03-26 23:44:01 +00:00

49 lines
1.2 KiB
Text

# We have moved -dontobfuscate and -dontoptimize to the makefiles.
# dex does not like code run through proguard optimize and preverify steps.
# -dontoptimize
-dontpreverify
# Don't obfuscate. We only need dead code striping.
# -dontobfuscate
# Add this flag in your package's own configuration if it's needed.
#-flattenpackagehierarchy
# Keep classes and methods that have the guava @VisibleForTesting annotation
-keep @**.VisibleForTesting class *
-keepclassmembers class * {
@**.VisibleForTesting *;
}
# Understand the @Keep support annotation.
-keep class android.support.annotation.Keep
-keep class androidx.annotation.Keep
-keep @android.support.annotation.Keep class * {*;}
-keep @androidx.annotation.Keep class * {*;}
-keepclasseswithmembers class * {
@android.support.annotation.Keep <methods>;
}
-keepclasseswithmembers class * {
@androidx.annotation.Keep <methods>;
}
-keepclasseswithmembers class * {
@android.support.annotation.Keep <fields>;
}
-keepclasseswithmembers class * {
@androidx.annotation.Keep <fields>;
}
-keepclasseswithmembers class * {
@android.support.annotation.Keep <init>(...);
}
-keepclasseswithmembers class * {
@androidx.annotation.Keep <init>(...);
}
-include proguard_basic_keeps.flags