summaryrefslogtreecommitdiff
path: root/src/plugins/android/androidmanager.cpp
diff options
context:
space:
mode:
authorBogDan Vatra <bogdan@kdab.com>2016-01-05 15:48:51 +0200
committerBogDan Vatra <bogdan@kdab.com>2016-01-06 18:18:24 +0000
commit6ff1296822e879032c48a45b9f3475e6c81f0e97 (patch)
treec127775c4a63d2d4a6fef4756db48b1305349f57 /src/plugins/android/androidmanager.cpp
parent4c16632f8e88ce44df14188b0215f6b835ab1e8a (diff)
downloadqt-creator-6ff1296822e879032c48a45b9f3475e6c81f0e97.tar.gz
Android: update gradle wrapper properties
We need to call it when QmakeProject emits proFilesEvaluated to be sure AndroidPackageSourceDir is set. Task-number: QTCREATORBUG-15568 Change-Id: Ia70e0cff1b5fb8f2003ba2c2799a694873b2ad19 Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
Diffstat (limited to 'src/plugins/android/androidmanager.cpp')
-rw-r--r--src/plugins/android/androidmanager.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/plugins/android/androidmanager.cpp b/src/plugins/android/androidmanager.cpp
index 54e843954d..25f8903d01 100644
--- a/src/plugins/android/androidmanager.cpp
+++ b/src/plugins/android/androidmanager.cpp
@@ -700,9 +700,21 @@ bool AndroidManager::updateGradleProperties(ProjectExplorer::Target *target)
AndroidBuildApkStep *buildApkStep
= AndroidGlobal::buildStep<AndroidBuildApkStep>(target->activeBuildConfiguration());
- if (!buildApkStep || !buildApkStep->androidPackageSourceDir().appendPath(QLatin1String("gradlew")).exists())
+ if (!buildApkStep || !buildApkStep->useGradle() || !buildApkStep->androidPackageSourceDir().appendPath(QLatin1String("gradlew")).exists())
return false;
+ Utils::FileName wrapperProps(buildApkStep->androidPackageSourceDir());
+ wrapperProps.appendPath(QLatin1String("gradle/wrapper/gradle-wrapper.properties"));
+ if (wrapperProps.exists()) {
+ GradleProperties wrapperProperties = readGradleProperties(wrapperProps.toString());
+ QString distributionUrl = QString::fromLocal8Bit(wrapperProperties["distributionUrl"]);
+ QRegExp re(QLatin1String(".*services.gradle.org/distributions/gradle-2..*.zip"));
+ if (!re.exactMatch(distributionUrl)) {
+ wrapperProperties["distributionUrl"] = "https\\://services.gradle.org/distributions/gradle-2.2.1-all.zip";
+ mergeGradleProperties(wrapperProps.toString(), wrapperProperties);
+ }
+ }
+
GradleProperties localProperties;
localProperties["sdk.dir"] = AndroidConfigurations::currentConfig().sdkLocation().toString().toLocal8Bit();
if (!mergeGradleProperties(buildApkStep->androidPackageSourceDir().appendPath(QLatin1String("local.properties")).toString(), localProperties))