Merge "Add keep rules for SysUI plugin annotations"
This commit is contained in:
@@ -25,6 +25,9 @@ java_library {
|
||||
sdk_version: "current",
|
||||
name: "PluginCoreLib",
|
||||
srcs: ["src/**/*.java"],
|
||||
optimize: {
|
||||
proguard_flags_files: ["proguard.flags"],
|
||||
},
|
||||
|
||||
// Enforce that the library is built against java 8 so that there are
|
||||
// no compatibility issues with launcher
|
||||
|
||||
11
packages/SystemUI/plugin_core/proguard.flags
Normal file
11
packages/SystemUI/plugin_core/proguard.flags
Normal file
@@ -0,0 +1,11 @@
|
||||
# R8's full mode is a bit more aggressive in stripping annotations, but the
|
||||
# SystemUI plugin architecture requires these annotations at runtime. The
|
||||
# following rules are the minimal set necessary to ensure compatibility.
|
||||
# For more details, see:
|
||||
# https://r8.googlesource.com/r8/+/refs/heads/master/compatibility-faq.md#r8-full-mode
|
||||
-keepattributes RuntimeVisible*Annotation*,AnnotationDefault
|
||||
|
||||
-keep interface com.android.systemui.plugins.annotations.** {
|
||||
*;
|
||||
}
|
||||
-keep,allowshrinking,allowoptimization,allowobfuscation,allowaccessmodification @com.android.systemui.plugins.annotations.** class *
|
||||
Reference in New Issue
Block a user