diff options
author | Vikas Pachdha <[email protected]> | 2017-04-04 07:20:01 +0200 |
---|---|---|
committer | Vikas Pachdha <[email protected]> | 2017-04-12 12:45:42 +0000 |
commit | 2b5f5abb2b2bc45730d4e8e6222aec1ce32b1291 (patch) | |
tree | 22e427bb02cd22fcd0da607e867d9d564e8047f4 /src/plugins/android/androidtoolmanager.cpp | |
parent | 198c83ea700604f908a78c7db0448ae79b08b856 (diff) |
Android: Add system image information for each platform
Groundwork for the new sdk and avd management tool's integration
Task-number: QTCREATORBUG-17814
Change-Id: I3e46f6d3aa56c0f16dd66d0b1d731043e180e012
Reviewed-by: BogDan Vatra <[email protected]>
Diffstat (limited to 'src/plugins/android/androidtoolmanager.cpp')
-rw-r--r-- | src/plugins/android/androidtoolmanager.cpp | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/src/plugins/android/androidtoolmanager.cpp b/src/plugins/android/androidtoolmanager.cpp index 1bf48279726..0565c1ef43c 100644 --- a/src/plugins/android/androidtoolmanager.cpp +++ b/src/plugins/android/androidtoolmanager.cpp @@ -293,7 +293,17 @@ void AndroidToolOutputParser::parseTargetListing(const QString &output, if (!platformList) return; + auto addSystemImage = [](const QStringList& abiList, SdkPlatform &platform) { + foreach (auto imageAbi, abiList) { + SystemImage image; + image.abiName = imageAbi; + image.apiLevel = platform.apiLevel; + platform.systemImages.append(image); + } + }; + SdkPlatform platform; + QStringList abiList; foreach (const QString &l, output.split('\n')) { const QString line = l.trimmed(); if (line.startsWith(QLatin1String("id:")) && line.contains(QLatin1String("android-"))) { @@ -309,20 +319,26 @@ void AndroidToolOutputParser::parseTargetListing(const QString &output, } else if (line.startsWith(QLatin1String("Name:"))) { platform.name = line.mid(6); } else if (line.startsWith(QLatin1String("Tag/ABIs :"))) { - platform.abis = cleanAndroidABIs(line.mid(10).trimmed().split(QLatin1String(", "))); + abiList = cleanAndroidABIs(line.mid(10).trimmed().split(QLatin1String(", "))); } else if (line.startsWith(QLatin1String("ABIs"))) { - platform.abis = cleanAndroidABIs(line.mid(6).trimmed().split(QLatin1String(", "))); + abiList = cleanAndroidABIs(line.mid(6).trimmed().split(QLatin1String(", "))); } else if (line.startsWith(QLatin1String("---")) || line.startsWith(QLatin1String("==="))) { if (platform.apiLevel == -1) continue; + + addSystemImage(abiList, platform); *platformList << platform; + platform = SdkPlatform(); + abiList.clear(); } } // The last parsed Platform. - if (platform.apiLevel != -1) + if (platform.apiLevel != -1) { + addSystemImage(abiList, platform); *platformList << platform; + } } } // namespace Internal |