From 3e0c65b68c495e37f3498c627d530896363f1566 Mon Sep 17 00:00:00 2001 From: Jiyong Park Date: Sat, 5 Jan 2019 12:58:11 +0900 Subject: Add --override_apk_package_name to override app package name By default, the app package name of an APEX is equal to the apex package name. The new --override_apk_package_name option is used to override the behavior. In practice, one can use this option by setting PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES := : Test: m with PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES for 1) an APK in Android.mk 2) an APK in ANdroid.bp 3) an APEX and check that manifest names are modified as specified Change-Id: Idb30015205c572013a6d193b776409d32452ffb8 --- apexer/apexer.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'apexer/apexer.py') diff --git a/apexer/apexer.py b/apexer/apexer.py index 6da23e6..d09c44b 100644 --- a/apexer/apexer.py +++ b/apexer/apexer.py @@ -73,6 +73,8 @@ def ParseArgs(argv): parser.add_argument('--payload_type', metavar='TYPE', required=False, default="image", choices=["zip", "image"], help='type of APEX payload being built "zip" or "image"') + parser.add_argument('--override_apk_package_name', required=False, + help='package name of the APK container. Default is the apex name in --manifest.') return parser.parse_args(argv) def FindBinaryPath(binary): @@ -298,7 +300,11 @@ def CreateApex(args, work_dir): if args.verbose: print('Creating AndroidManifest ' + android_manifest_file) with open(android_manifest_file, 'w+') as f: - f.write(PrepareAndroidManifest(manifest_apex.name, manifest_apex.version)) + app_package_name = manifest_apex.name + if args.override_apk_package_name: + app_package_name = args.override_apk_package_name + + f.write(PrepareAndroidManifest(app_package_name, manifest_apex.version)) # copy manifest to the content dir so that it is also accessible # without mounting the image -- cgit v1.2.3