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
 	}
 
diff --git a/java/app_test.go b/java/app_test.go
index 2195afd..e3fa26e 100644
--- a/java/app_test.go
+++ b/java/app_test.go
@@ -1688,7 +1688,7 @@
 		certFlag       string
 		lineageFlag    string
 		overrides      []string
-		aaptFlag       string
+		packageFlag    string
 		logging_parent string
 	}{
 		{
@@ -1698,7 +1698,7 @@
 			certFlag:       "build/make/target/product/security/expiredkey.x509.pem build/make/target/product/security/expiredkey.pk8",
 			lineageFlag:    "",
 			overrides:      []string{"qux"},
-			aaptFlag:       "",
+			packageFlag:    "",
 			logging_parent: "",
 		},
 		{
@@ -1708,7 +1708,7 @@
 			certFlag:       "cert/new_cert.x509.pem cert/new_cert.pk8",
 			lineageFlag:    "--lineage lineage.bin",
 			overrides:      []string{"qux", "foo"},
-			aaptFlag:       "",
+			packageFlag:    "",
 			logging_parent: "bah",
 		},
 		{
@@ -1718,7 +1718,7 @@
 			certFlag:       "build/make/target/product/security/expiredkey.x509.pem build/make/target/product/security/expiredkey.pk8",
 			lineageFlag:    "",
 			overrides:      []string{"qux", "foo"},
-			aaptFlag:       "--rename-manifest-package org.dandroid.bp",
+			packageFlag:    "org.dandroid.bp",
 			logging_parent: "",
 		},
 	}
@@ -1766,12 +1766,11 @@
 				expected.logging_parent, logging_parent)
 		}
 
-		// Check the package renaming flag, if exists.
+		// Check the package renaming flags, if exists.
 		res := variant.Output("package-res.apk")
 		aapt2Flags := res.Args["flags"]
-		if !strings.Contains(aapt2Flags, expected.aaptFlag) {
-			t.Errorf("package renaming flag, %q is missing in aapt2 link flags, %q", expected.aaptFlag, aapt2Flags)
-		}
+		checkAapt2LinkFlag(t, aapt2Flags, "rename-manifest-package", expected.packageFlag)
+		checkAapt2LinkFlag(t, aapt2Flags, "rename-resources-package", expected.packageFlag)
 	}
 }
 
@@ -1908,6 +1907,7 @@
 		res := variant.Output("package-res.apk")
 		aapt2Flags := res.Args["flags"]
 		checkAapt2LinkFlag(t, aapt2Flags, "rename-manifest-package", expected.packageFlag)
+		checkAapt2LinkFlag(t, aapt2Flags, "rename-resources-package", expected.packageFlag)
 		checkAapt2LinkFlag(t, aapt2Flags, "rename-instrumentation-target-package", expected.targetPackageFlag)
 	}
 }
