diff --git a/java/app.go b/java/app.go index a037ef357..f99b2991e 100644 --- a/java/app.go +++ b/java/app.go @@ -213,7 +213,6 @@ func (a *AndroidApp) generateAndroidBuildActions(ctx android.ModuleContext) { installDir = filepath.Join("app", ctx.ModuleName()) } a.dexpreopter.installPath = android.PathForModuleInstall(ctx, installDir, ctx.ModuleName()+".apk") - a.dexpreopter.isPrivApp = Bool(a.appProperties.Privileged) if ctx.ModuleName() != "framework-res" { a.Module.compile(ctx, a.aaptSrcJar) diff --git a/java/dexpreopt.go b/java/dexpreopt.go index 1dc3e9fd4..ce51abaa5 100644 --- a/java/dexpreopt.go +++ b/java/dexpreopt.go @@ -28,11 +28,11 @@ import ( type dexpreopter struct { dexpreoptProperties DexpreoptProperties - installPath android.OutputPath - isPrivApp bool - isSDKLibrary bool - isTest bool - isInstallable bool + installPath android.OutputPath + uncompressedDex bool + isSDKLibrary bool + isTest bool + isInstallable bool builtInstalled []string } @@ -145,19 +145,13 @@ func (d *dexpreopter) dexpreopt(ctx android.ModuleContext, dexJarFile android.Mo deps = append(deps, profileClassListing.Path()) } - uncompressedDex := false - if ctx.Config().UncompressPrivAppDex() && - (d.isPrivApp || inList(ctx.ModuleName(), ctx.Config().ModulesLoadedByPrivilegedModules())) { - uncompressedDex = true - } - dexpreoptConfig := dexpreopt.ModuleConfig{ Name: ctx.ModuleName(), DexLocation: dexLocation, BuildPath: android.PathForModuleOut(ctx, "dexpreopt", ctx.ModuleName()+".jar").String(), DexPath: dexJarFile.String(), PreferCodeIntegrity: false, - UncompressedDex: uncompressedDex, + UncompressedDex: d.uncompressedDex, HasApkLibraries: false, PreoptFlags: nil, diff --git a/java/java.go b/java/java.go index 5e67193f0..8b8e4ba50 100644 --- a/java/java.go +++ b/java/java.go @@ -1327,6 +1327,7 @@ func (j *Module) compile(ctx android.ModuleContext, extraSrcJars ...android.Path j.dexJarFile = dexOutputFile j.dexpreopter.isInstallable = Bool(j.properties.Installable) + j.dexpreopter.uncompressedDex = j.deviceProperties.UncompressDex dexOutputFile = j.dexpreopt(ctx, dexOutputFile) j.maybeStrippedDexJarFile = dexOutputFile @@ -1499,9 +1500,14 @@ type Library struct { Module } +func (j *Library) shouldUncompressDex(ctx android.ModuleContext) bool { + return false +} + func (j *Library) GenerateAndroidBuildActions(ctx android.ModuleContext) { j.dexpreopter.installPath = android.PathForModuleInstall(ctx, "framework", ctx.ModuleName()+".jar") j.dexpreopter.isSDKLibrary = j.deviceProperties.IsSDKLibrary + j.deviceProperties.UncompressDex = j.shouldUncompressDex(ctx) j.compile(ctx) if Bool(j.properties.Installable) || ctx.Host() {