Merge cherrypicks of ['android-review.googlesource.com/3396412'] into 25Q1-release.

Change-Id: Ic21fca5cefd6290369ccd20e9a3a0f7de1da8af2
diff --git a/java/androidmk.go b/java/androidmk.go
index b6bab53..039e847 100644
--- a/java/androidmk.go
+++ b/java/androidmk.go
@@ -408,7 +408,7 @@
 		Include:    "$(BUILD_SYSTEM)/soong_app_prebuilt.mk",
 		ExtraEntries: []android.AndroidMkExtraEntriesFunc{
 			func(ctx android.AndroidMkExtraEntriesContext, entries *android.AndroidMkEntries) {
-				entries.SetString("LOCAL_CERTIFICATE", "PRESIGNED") // The apk will be signed by soong
+				entries.SetString("LOCAL_CERTIFICATE", a.certificate.AndroidMkString())
 			},
 		},
 	}}
diff --git a/java/rro.go b/java/rro.go
index d277e4a..ab4fafa 100644
--- a/java/rro.go
+++ b/java/rro.go
@@ -290,7 +290,8 @@
 
 	properties AutogenRuntimeResourceOverlayProperties
 
-	outputFile android.Path
+	certificate Certificate
+	outputFile  android.Path
 }
 
 type AutogenRuntimeResourceOverlayProperties struct {
@@ -380,7 +381,8 @@
 		return
 	}
 	// Sign the built package
-	_, certificates := processMainCert(a.ModuleBase, "", nil, ctx)
+	var certificates []Certificate
+	a.certificate, certificates = processMainCert(a.ModuleBase, "", nil, ctx)
 	signed := android.PathForModuleOut(ctx, "signed", a.Name()+".apk")
 	SignAppPackage(ctx, signed, a.exportPackage, certificates, nil, nil, "")
 	a.outputFile = signed