Use aapt2 flag --rename-resources-package in soong
This change uses aapt2 flag to change the package name encoded in the resources table for override apps. Test: app_test.go Bug: 147434671 Change-Id: I70a43c2163709afc90262d74f975ce14a556cf55
This commit is contained in:
12
java/app.go
12
java/app.go
@@ -491,6 +491,16 @@ func (a *AndroidApp) shouldEmbedJnis(ctx android.BaseModuleContext) bool {
|
||||
!a.IsForPlatform() || a.appProperties.AlwaysPackageNativeLibs
|
||||
}
|
||||
|
||||
func generateAaptRenamePackageFlags(packageName string) []string {
|
||||
aaptFlags := []string{}
|
||||
aaptFlags = append(aaptFlags, "--rename-manifest-package "+packageName)
|
||||
// --rename-resources-package renames the package within the resources table to packageName.
|
||||
// Note: this will *not* rename the R.java file because the base module .R
|
||||
// package may be directly referenced in code.
|
||||
aaptFlags = append(aaptFlags, "--rename-resources-package "+packageName)
|
||||
return aaptFlags
|
||||
}
|
||||
|
||||
func (a *AndroidApp) OverriddenManifestPackageName() string {
|
||||
return a.overriddenManifestPackageName
|
||||
}
|
||||
@@ -527,7 +537,7 @@ func (a *AndroidApp) aaptBuildActions(ctx android.ModuleContext) {
|
||||
if !overridden {
|
||||
manifestPackageName = *a.overridableAppProperties.Package_name
|
||||
}
|
||||
aaptLinkFlags = append(aaptLinkFlags, "--rename-manifest-package "+manifestPackageName)
|
||||
aaptLinkFlags = append(aaptLinkFlags, generateAaptRenamePackageFlags(manifestPackageName)...)
|
||||
a.overriddenManifestPackageName = manifestPackageName
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user