Allow each APEX to provide its own AndroidManifest
AndroidManifest.xml file can be specified via the 'androidManifest' property in the apex module type. It can be used to have a custom AndroidManifest.xml that have additional tags (such as <uses-sdk> or <uses-feature>) for precise targeting. The property is optional; if unspecified, then one is auto-generated as before. Bug: 123857186 Test: m apex_test_build_features Change-Id: Id7ee0471661887cfa11124cbaa3beea8cffcdda4
This commit is contained in:
10
apex/apex.go
10
apex/apex.go
@@ -212,6 +212,10 @@ type apexBundleProperties struct {
|
|||||||
// "apex_manifest.json"
|
// "apex_manifest.json"
|
||||||
Manifest *string
|
Manifest *string
|
||||||
|
|
||||||
|
// AndroidManifest.xml file used for the zip container of this APEX bundle.
|
||||||
|
// If unspecified, a default one is automatically generated.
|
||||||
|
AndroidManifest *string
|
||||||
|
|
||||||
// Determines the file contexts file for setting security context to each file in this APEX bundle.
|
// Determines the file contexts file for setting security context to each file in this APEX bundle.
|
||||||
// Specifically, when this is set to <value>, /system/sepolicy/apex/<value>_file_contexts file is
|
// Specifically, when this is set to <value>, /system/sepolicy/apex/<value>_file_contexts file is
|
||||||
// used.
|
// used.
|
||||||
@@ -901,6 +905,12 @@ func (a *apexBundle) buildUnflattenedApex(ctx android.ModuleContext, keyFile and
|
|||||||
optFlags = append(optFlags, "--override_apk_package_name "+manifestPackageName)
|
optFlags = append(optFlags, "--override_apk_package_name "+manifestPackageName)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if a.properties.AndroidManifest != nil {
|
||||||
|
androidManifestFile := android.PathForModuleSrc(ctx, proptools.String(a.properties.AndroidManifest))
|
||||||
|
implicitInputs = append(implicitInputs, androidManifestFile)
|
||||||
|
optFlags = append(optFlags, "--android_manifest "+androidManifestFile.String())
|
||||||
|
}
|
||||||
|
|
||||||
ctx.Build(pctx, android.BuildParams{
|
ctx.Build(pctx, android.BuildParams{
|
||||||
Rule: apexRule,
|
Rule: apexRule,
|
||||||
Implicits: implicitInputs,
|
Implicits: implicitInputs,
|
||||||
|
Reference in New Issue
Block a user