Pass platform version name as --version-name for framework-res.apk
framework-res.apk should get the platform version name ("9") as
--version-name, not the SDK version ("28"). It will get copied
to compileSdkVersionCodename in APKs compiled against it.
Bug: 78324052
Test: aapt dump badging $OUT/system/framework/framework-res.apk | grep -i version
Change-Id: I34a601cb2c14f66199066e7d598862108da0b950
Merged-In: I34a601cb2c14f66199066e7d598862108da0b950
(cherry picked from commit b691e24d899f3a773da88df0eecada5918a96a2c)
diff --git a/android/config.go b/android/config.go
index 7ab5f56..7f2a3ac 100644
--- a/android/config.go
+++ b/android/config.go
@@ -468,6 +468,10 @@
return *c.productVariables.ResourceOverlays
}
+func (c *config) PlatformVersionName() string {
+ return String(c.productVariables.Platform_version_name)
+}
+
func (c *config) PlatformSdkVersionInt() int {
return *c.productVariables.Platform_sdk_version
}
diff --git a/android/variable.go b/android/variable.go
index ce2cb23..6599ca3 100644
--- a/android/variable.go
+++ b/android/variable.go
@@ -109,6 +109,7 @@
BuildNumberFromFile *string `json:",omitempty"`
DateFromFile *string `json:",omitempty"`
+ Platform_version_name *string `json:",omitempty"`
Platform_sdk_version *int `json:",omitempty"`
Platform_sdk_codename *string `json:",omitempty"`
Platform_sdk_final *bool `json:",omitempty"`
diff --git a/java/aar.go b/java/aar.go
index 9e5cddb..66f1cab 100644
--- a/java/aar.go
+++ b/java/aar.go
@@ -150,8 +150,8 @@
if ctx.ModuleName() == "framework-res" {
// Some builds set AppsDefaultVersionName() to include the build number ("O-123456"). aapt2 copies the
// version name of framework-res into app manifests as compileSdkVersionCodename, which confuses things
- // if it contains the build number. Use the DefaultAppTargetSdk instead.
- versionName = ctx.Config().DefaultAppTargetSdk()
+ // if it contains the build number. Use the PlatformVersionName instead.
+ versionName = ctx.Config().PlatformVersionName()
} else {
versionName = ctx.Config().AppsDefaultVersionName()
}