diff --git a/android/config.go b/android/config.go
index 14fc04d..236d1c1 100644
--- a/android/config.go
+++ b/android/config.go
@@ -1925,6 +1925,10 @@
 	return InList(name, c.config.productVariables.BuildBrokenInputDirModules)
 }
 
+func (c *config) BuildWarningBadOptionalUsesLibsAllowlist() []string {
+	return c.productVariables.BuildWarningBadOptionalUsesLibsAllowlist
+}
+
 func (c *deviceConfig) GenruleSandboxing() bool {
 	return Bool(c.config.productVariables.GenruleSandboxing)
 }
diff --git a/android/variable.go b/android/variable.go
index 972663b..9fb2537 100644
--- a/android/variable.go
+++ b/android/variable.go
@@ -449,6 +449,8 @@
 	BuildBrokenVendorPropertyNamespace bool     `json:",omitempty"`
 	BuildBrokenInputDirModules         []string `json:",omitempty"`
 
+	BuildWarningBadOptionalUsesLibsAllowlist []string `json:",omitempty"`
+
 	BuildDebugfsRestrictionsEnabled bool `json:",omitempty"`
 
 	RequiresInsecureExecmemForSwiftshader bool `json:",omitempty"`
diff --git a/java/app.go b/java/app.go
index 58580d4..3e4c8cf 100755
--- a/java/app.go
+++ b/java/app.go
@@ -1396,7 +1396,7 @@
 func (u *usesLibrary) presentOptionalUsesLibs(ctx android.BaseModuleContext) []string {
 	optionalUsesLibs := android.FilterListPred(u.usesLibraryProperties.Optional_uses_libs, func(s string) bool {
 		exists := ctx.OtherModuleExists(s)
-		if !exists {
+		if !exists && !android.InList(ctx.ModuleName(), ctx.Config().BuildWarningBadOptionalUsesLibsAllowlist()) {
 			fmt.Printf("Warning: Module '%s' depends on non-existing optional_uses_libs '%s'\n", ctx.ModuleName(), s)
 		}
 		return exists
diff --git a/java/app_test.go b/java/app_test.go
index 5aed178..cf7d174 100644
--- a/java/app_test.go
+++ b/java/app_test.go
@@ -2644,6 +2644,9 @@
 		prepareForJavaTest,
 		PrepareForTestWithJavaSdkLibraryFiles,
 		FixtureWithLastReleaseApis("runtime-library", "foo", "quuz", "qux", "bar", "fred"),
+		android.FixtureModifyProductVariables(func(variables android.FixtureProductVariables) {
+			variables.BuildWarningBadOptionalUsesLibsAllowlist = []string{"app", "prebuilt"}
+		}),
 	).RunTestWithBp(t, bp)
 
 	app := result.ModuleForTests("app", "android_common")
