Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1149dbb0 authored by Timothy Yiu's avatar Timothy Yiu
Browse files

Refine system service proguard rules

Refine proguard rules for system services to prepare for rolling out
full system server R8 optimization.

Added proguard rules to keep auto-generated Java aconfig flags to
prevent Flag function from being inlined / removed since R8 do not have
context on flags that are referenced outside of the module.

Bug: 313546597
Change-Id: I184cd7a79acc7fa2d9db66438df1f0b50d951fd9
Test: Local build and boot with full system server optimization
parent 8ec1eb1e
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -54,7 +54,10 @@
-keep,allowoptimization,allowaccessmodification class android.app.admin.flags.FeatureFlagsImpl { *; }
-keep,allowoptimization,allowaccessmodification class com.android.server.input.NativeInputManagerService$NativeImpl { *; }
-keep,allowoptimization,allowaccessmodification class com.android.server.ThreadPriorityBooster { *; }
-keep,allowaccessmodification class android.app.admin.flags.Flags { *; }

# Keep all aconfig Flag class as they might be statically referenced by other packages
# An merge or inlining could lead to missing dependencies that cause run time errors
-keepclassmembernames class android.**.Flags, com.android.**.Flags { public *; }

# Referenced via CarServiceHelperService in car-frameworks-service (avoid removing)
-keep public class com.android.server.utils.Slogf { *; }