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
diff --git a/java/app.go b/java/app.go
index 215b07b..63c5bef 100755
--- a/java/app.go
+++ b/java/app.go
@@ -491,6 +491,16 @@
 		!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 @@
 		if !overridden {
 			manifestPackageName = *a.overridableAppProperties.Package_name
 		}
-		aaptLinkFlags = append(aaptLinkFlags, "--rename-manifest-package "+manifestPackageName)
+		aaptLinkFlags = append(aaptLinkFlags, generateAaptRenamePackageFlags(manifestPackageName)...)
 		a.overriddenManifestPackageName = manifestPackageName
 	}