summaryrefslogtreecommitdiff
path: root/src/plugins/android/androidpackagecreationstep.cpp
diff options
context:
space:
mode:
authorBogDan Vatra <bog_dan_ro@yahoo.com>2012-06-23 13:18:01 +0300
committerDaniel Teske <daniel.teske@nokia.com>2012-07-10 11:40:24 +0200
commit096c4db896797c5ceb65ba5721b595ad4765ad91 (patch)
treef28baa15a723abbf192d769847cae4cb43452245 /src/plugins/android/androidpackagecreationstep.cpp
parent7140a685d3f15fb413729ffb5c268afb7274de7b (diff)
downloadqt-creator-096c4db896797c5ceb65ba5721b595ad4765ad91.tar.gz
Run zipalign tool after android packges is created and signed.
Change-Id: Idaeb93490723085b8f5f7cae356fbaee40636f89 Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
Diffstat (limited to 'src/plugins/android/androidpackagecreationstep.cpp')
-rw-r--r--src/plugins/android/androidpackagecreationstep.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/plugins/android/androidpackagecreationstep.cpp b/src/plugins/android/androidpackagecreationstep.cpp
index 1d4ba4c30e..4b8c008799 100644
--- a/src/plugins/android/androidpackagecreationstep.cpp
+++ b/src/plugins/android/androidpackagecreationstep.cpp
@@ -175,6 +175,7 @@ bool AndroidPackageCreationStep::init()
m_keystorePathForRun = m_keystorePath;
m_certificatePasswdForRun = m_certificatePasswd;
m_jarSigner = AndroidConfigurations::instance().jarsignerPath();
+ m_zipAligner = AndroidConfigurations::instance().zipalignPath();
initCheckRequiredLibrariesForRun();
return true;
}
@@ -425,7 +426,7 @@ bool AndroidPackageCreationStep::createPackage()
<< QLatin1String("-storepass") << m_keystorePasswd
<< m_apkPathUnsigned.toUserOutput()
<< m_certificateAlias;
- buildProc->start(m_jarSigner.toString(), build); //TODO
+ buildProc->start(m_jarSigner.toString(), build);
if (!buildProc->waitForStarted()) {
disconnect(buildProc, 0, this, 0);
buildProc->deleteLater();
@@ -442,7 +443,12 @@ bool AndroidPackageCreationStep::createPackage()
emit addOutput(tr("Failed, try again"), ErrorMessageOutput);
m_certificatePasswdForRun.clear();
}
- if (QFile::rename(m_apkPathUnsigned.toString(), m_apkPathSigned.toString())) {
+ build.clear();
+ build << QLatin1String("-f") << QLatin1String("-v") << QLatin1String("4") << m_apkPathUnsigned.toString() << m_apkPathSigned.toString();
+ buildProc->start(m_zipAligner.toString(), build);
+ buildProc->waitForFinished();
+ if (!buildProc->exitCode()) {
+ QFile::remove(m_apkPathUnsigned.toString());
emit addOutput(tr("Release signed package created to %1")
.arg(m_apkPathSigned.toUserOutput())
, MessageOutput);