Refine (optional) system_server Proguard config
Allow removal of synthetic members, as well as access modifications, improving both inlining performance and low-risk size reduction. Bug: 203088572,210510433 Test: SYSTEM_OPTIMIZE_JAVA=true m (validate services.jar/odex change) Change-Id: I17fd15623351b985d49034f4de13425b31a93758
This commit is contained in:
@@ -1,11 +1,21 @@
|
||||
# TODO(b/196084106): Refine and optimize this configuration. Note that this
|
||||
# configuration is only used when `SOONG_CONFIG_ANDROID_SYSTEM_OPTIMIZE_JAVA=true`.
|
||||
-keep,allowoptimization,allowaccessmodification class ** {
|
||||
*;
|
||||
!synthetic *;
|
||||
}
|
||||
|
||||
# Various classes subclassed in ethernet-service (avoid marking final).
|
||||
-keep public class android.net.** { *; }
|
||||
|
||||
# Referenced via CarServiceHelperService in car-frameworks-service (avoid removing).
|
||||
-keep public class com.android.server.utils.Slogf { *; }
|
||||
-keep public class com.android.server.utils.Slogf { *; }
|
||||
|
||||
# Allows making private and protected methods/fields public as part of
|
||||
# optimization. This enables inlining of trivial getter/setter methods.
|
||||
-allowaccessmodification
|
||||
|
||||
# Disallow accessmodification for soundtrigger classes. Logging via reflective
|
||||
# public member traversal can cause infinite loops. See b/210901706.
|
||||
-keep,allowoptimization class com.android.server.soundtrigger_middleware.** {
|
||||
!synthetic *;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user