Set zipalign path in apk_masseur if build_tools not set on path
This will align functionality with run_on_as_app.
Change-Id: If7a45b1c85db18c32f600571be8065309810db63
diff --git a/tools/apk_masseur.py b/tools/apk_masseur.py
index fa46485..be380ed 100755
--- a/tools/apk_masseur.py
+++ b/tools/apk_masseur.py
@@ -74,7 +74,16 @@
def align(signed_apk, temp, quiet):
utils.Print('Aligning', quiet=quiet)
aligned_apk = os.path.join(temp, 'aligned.apk')
- cmd = ['zipalign', '-f', '4', signed_apk, aligned_apk]
+ zipalign_path = (
+ 'zipalign' if 'build_tools' in os.environ.get('PATH')
+ else os.path.join(utils.ANDROID_BUILD_TOOLS, 'zipalign'))
+ cmd = [
+ zipalign_path,
+ '-f',
+ '4',
+ signed_apk,
+ aligned_apk
+ ]
utils.RunCmd(cmd, quiet=quiet)
return signed_apk
diff --git a/tools/run_on_as_app.py b/tools/run_on_as_app.py
index 2454863..cad9c13 100755
--- a/tools/run_on_as_app.py
+++ b/tools/run_on_as_app.py
@@ -117,13 +117,6 @@
},
}
-# Common environment setup.
-user_home = os.path.expanduser('~')
-android_home = os.path.join(user_home, 'Android', 'Sdk')
-android_build_tools_version = '28.0.3'
-android_build_tools = os.path.join(
- android_home, 'build-tools', android_build_tools_version)
-
# TODO(christofferqa): Do not rely on 'emulator-5554' name
emulator_id = 'emulator-5554'
@@ -375,7 +368,7 @@
app, config, checkout_dir, proguard_config_dest)
env = {}
- env['ANDROID_HOME'] = android_home
+ env['ANDROID_HOME'] = utils.ANDROID_HOME
env['JAVA_OPTS'] = '-ea:com.android.tools.r8...'
releaseTarget = config.get('releaseTarget')
@@ -420,7 +413,7 @@
keystore = 'app.keystore'
keystore_password = 'android'
apk_utils.sign_with_apksigner(
- android_build_tools,
+ utils.ANDROID_BUILD_TOOLS,
unsigned_apk,
signed_apk,
keystore,
diff --git a/tools/utils.py b/tools/utils.py
index b39a168..0c8c97c 100644
--- a/tools/utils.py
+++ b/tools/utils.py
@@ -54,6 +54,13 @@
R8LIB_KEEP_RULES = os.path.join(REPO_ROOT, 'src/main/keep.txt')
RETRACE_JAR = os.path.join(THIRD_PARTY, 'proguard', 'proguard6.0.1', 'lib', 'retrace.jar')
+# Common environment setup.
+USER_HOME = os.path.expanduser('~')
+ANDROID_HOME = os.path.join(USER_HOME, 'Android', 'Sdk')
+ANDROID_BUILD_TOOLS_VERSION = '28.0.3'
+ANDROID_BUILD_TOOLS = os.path.join(
+ ANDROID_HOME, 'build-tools', ANDROID_BUILD_TOOLS_VERSION)
+
def Print(s, quiet=False):
if quiet:
return