aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsetrofim <setrofim@gmail.com>2017-10-10 08:35:55 +0100
committerGitHub <noreply@github.com>2017-10-10 08:35:55 +0100
commitb0457f7ed75e9717fc2dcb4a1540a25315eb81e7 (patch)
treed1bb08ae521695813f53c4679ad5bcb7352d5598
parent4d269774f7087bcf9f6c53deb0dbe6a3503d821b (diff)
parent99aca2543835d56001eec63ce60e6c7dc73a4570 (diff)
downloaddevlib-b0457f7ed75e9717fc2dcb4a1540a25315eb81e7.tar.gz
Merge pull request #188 from bjackman/apkinfo-better-error
ApkInfo: Improve error for bad .apk files
-rw-r--r--devlib/utils/android.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/devlib/utils/android.py b/devlib/utils/android.py
index ce1ab0b..0cdd2b0 100644
--- a/devlib/utils/android.py
+++ b/devlib/utils/android.py
@@ -135,7 +135,11 @@ class ApkInfo(object):
_check_env()
command = [aapt, 'dump', 'badging', apk_path]
logger.debug(' '.join(command))
- output = subprocess.check_output(command)
+ try:
+ output = subprocess.check_output(command, stderr=subprocess.STDOUT)
+ except subprocess.CalledProcessError as e:
+ raise HostError('Error parsing APK file {}. `aapt` says:\n{}'
+ .format(apk_path, e.output))
for line in output.split('\n'):
if line.startswith('application-label:'):
self.label = line.split(':')[1].strip().replace('\'', '')