diff --git a/java/app.go b/java/app.go
index 63c5bef..215b07b 100755
--- a/java/app.go
+++ b/java/app.go
@@ -491,16 +491,6 @@
 		!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
 }
@@ -537,7 +527,7 @@
 		if !overridden {
 			manifestPackageName = *a.overridableAppProperties.Package_name
 		}
-		aaptLinkFlags = append(aaptLinkFlags, generateAaptRenamePackageFlags(manifestPackageName)...)
+		aaptLinkFlags = append(aaptLinkFlags, "--rename-manifest-package "+manifestPackageName)
 		a.overriddenManifestPackageName = manifestPackageName
 	}
 
diff --git a/java/app_test.go b/java/app_test.go
index e3fa26e..2195afd 100644
--- a/java/app_test.go
+++ b/java/app_test.go
@@ -1688,7 +1688,7 @@
 		certFlag       string
 		lineageFlag    string
 		overrides      []string
-		packageFlag    string
+		aaptFlag       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"},
-			packageFlag:    "",
+			aaptFlag:       "",
 			logging_parent: "",
 		},
 		{
@@ -1708,7 +1708,7 @@
 			certFlag:       "cert/new_cert.x509.pem cert/new_cert.pk8",
 			lineageFlag:    "--lineage lineage.bin",
 			overrides:      []string{"qux", "foo"},
-			packageFlag:    "",
+			aaptFlag:       "",
 			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"},
-			packageFlag:    "org.dandroid.bp",
+			aaptFlag:       "--rename-manifest-package org.dandroid.bp",
 			logging_parent: "",
 		},
 	}
@@ -1766,11 +1766,12 @@
 				expected.logging_parent, logging_parent)
 		}
 
-		// Check the package renaming flags, if exists.
+		// Check the package renaming flag, if exists.
 		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)
+		if !strings.Contains(aapt2Flags, expected.aaptFlag) {
+			t.Errorf("package renaming flag, %q is missing in aapt2 link flags, %q", expected.aaptFlag, aapt2Flags)
+		}
 	}
 }
 
@@ -1907,7 +1908,6 @@
 		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)
 	}
 }
