Support privleged app in APEX
privileged apps are installed to priv-app dir in APEX
Test: m
Change-Id: I8141e1c20e9486655606fa43b949783f11da09f4
diff --git a/java/app.go b/java/app.go
index e033661..85b97e1 100644
--- a/java/app.go
+++ b/java/app.go
@@ -230,7 +230,7 @@
// Uncompress dex in APKs of privileged apps (even for unbundled builds, they may
// be preinstalled as prebuilts).
- if ctx.Config().UncompressPrivAppDex() && Bool(a.appProperties.Privileged) {
+ if ctx.Config().UncompressPrivAppDex() && a.Privileged() {
return true
}
@@ -318,7 +318,7 @@
if ctx.ModuleName() == "framework-res" {
// framework-res.apk is installed as system/framework/framework-res.apk
installDir = "framework"
- } else if Bool(a.appProperties.Privileged) {
+ } else if a.Privileged() {
installDir = filepath.Join("priv-app", a.installApkName)
} else {
installDir = filepath.Join("app", a.installApkName)
@@ -444,7 +444,7 @@
if ctx.ModuleName() == "framework-res" {
// framework-res.apk is installed as system/framework/framework-res.apk
a.installDir = android.PathForModuleInstall(ctx, "framework")
- } else if Bool(a.appProperties.Privileged) {
+ } else if a.Privileged() {
a.installDir = android.PathForModuleInstall(ctx, "priv-app", a.installApkName)
} else if ctx.InstallInTestcases() {
a.installDir = android.PathForModuleInstall(ctx, a.installApkName)
@@ -557,6 +557,10 @@
return a.Library.OutputFiles(tag)
}
+func (a *AndroidApp) Privileged() bool {
+ return Bool(a.appProperties.Privileged)
+}
+
// android_app compiles sources and Android resources into an Android application package `.apk` file.
func AndroidAppFactory() android.Module {
module := &AndroidApp{}
@@ -874,7 +878,7 @@
}
// Uncompress dex in APKs of privileged apps
- if ctx.Config().UncompressPrivAppDex() && Bool(a.properties.Privileged) {
+ if ctx.Config().UncompressPrivAppDex() && a.Privileged() {
return true
}
@@ -1005,6 +1009,10 @@
a.AddProperties(a.archVariants)
}
+func (a *AndroidAppImport) Privileged() bool {
+ return Bool(a.properties.Privileged)
+}
+
func createVariantGroupType(variants []string, variantGroupName string) reflect.Type {
props := reflect.TypeOf((*AndroidAppImportProperties)(nil))