From a7b38592f8fdab48b9f4a3727d3d358c0f32a2e6 Mon Sep 17 00:00:00 2001 From: Rico Wind Date: Mon, 26 Aug 2024 12:10:44 +0200 Subject: [PATCH] Launch flag guarded always on optimized resource shrinking This will use the RELEASE_USE_OPTIMIZED_RESOURCE_SHRINKING_BY_DEFAULT flag - default enabling in trunk staging will be done in a follow up cl To disable optimized resource shrinking on an app basis one can opt out with optimized_shrink_resources: false bug please file a bug for us to find out why (so that we can remove legacy mode) Bug: 325905703 Test: Existing Change-Id: Idb57b8e6bba26f06c044657492ff4ae89ec81254 --- android/config.go | 4 ++++ java/dex.go | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/android/config.go b/android/config.go index 368e57381..a469e3e7d 100644 --- a/android/config.go +++ b/android/config.go @@ -1965,6 +1965,10 @@ func (c *config) GetBuildFlag(name string) (string, bool) { return val, ok } +func (c *config) UseOptimizedResourceShrinkingByDefault() bool { + return c.productVariables.GetBuildFlagBool("RELEASE_USE_OPTIMIZED_RESOURCE_SHRINKING_BY_DEFAULT") +} + func (c *config) UseResourceProcessorByDefault() bool { return c.productVariables.GetBuildFlagBool("RELEASE_USE_RESOURCE_PROCESSOR_BY_DEFAULT") } diff --git a/java/dex.go b/java/dex.go index 7d42efc9c..939516598 100644 --- a/java/dex.go +++ b/java/dex.go @@ -120,7 +120,7 @@ func (d *DexProperties) resourceShrinkingEnabled(ctx android.ModuleContext) bool } func (d *DexProperties) optimizedResourceShrinkingEnabled(ctx android.ModuleContext) bool { - return d.resourceShrinkingEnabled(ctx) && Bool(d.Optimize.Optimized_shrink_resources) + return d.resourceShrinkingEnabled(ctx) && BoolDefault(d.Optimize.Optimized_shrink_resources, ctx.Config().UseOptimizedResourceShrinkingByDefault()) } func (d *dexer) optimizeOrObfuscateEnabled() bool { @@ -390,7 +390,7 @@ func (d *dexer) r8Flags(ctx android.ModuleContext, dexParams *compileDexParams) r8Flags = append(r8Flags, "--resource-input", d.resourcesInput.Path().String()) r8Deps = append(r8Deps, d.resourcesInput.Path()) r8Flags = append(r8Flags, "--resource-output", d.resourcesOutput.Path().String()) - if Bool(opt.Optimized_shrink_resources) { + if d.dexProperties.optimizedResourceShrinkingEnabled(ctx) { r8Flags = append(r8Flags, "--optimized-resource-shrinking") } }