Android: Add explicit tag for google_apis system images

Task-number: QTCREATORBUG-20298
Change-Id: I9bc4d9192584ffbc1180ae7b69f334c915ca16f4
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
This commit is contained in:
Vikas Pachdha
2018-04-18 10:40:54 +02:00
parent cc0c7f2ccd
commit 717c7bfd9f

View File

@@ -53,6 +53,7 @@ const char avdInfoPathKey[] = "Path:";
const char avdInfoAbiKey[] = "abi.type"; const char avdInfoAbiKey[] = "abi.type";
const char avdInfoTargetKey[] = "target"; const char avdInfoTargetKey[] = "target";
const char avdInfoErrorKey[] = "Error:"; const char avdInfoErrorKey[] = "Error:";
const char googleApiTag[] = "google_apis";
const int avdCreateTimeoutMs = 30000; const int avdCreateTimeoutMs = 30000;
@@ -111,13 +112,17 @@ static CreateAvdInfo createAvdCommand(const AndroidConfig config, const CreateAv
return result; return result;
} }
QStringList arguments({"create", "avd", "-k", result.sdkPlatform->sdkStylePath(), "-n", result.name}); QStringList arguments({"create", "avd", "-n", result.name});
if (!result.abi.isEmpty()) { if (!result.abi.isEmpty()) {
SystemImage *image = Utils::findOrDefault(result.sdkPlatform->systemImages(), SystemImage *image = Utils::findOrDefault(result.sdkPlatform->systemImages(),
Utils::equal(&SystemImage::abiName, result.abi)); Utils::equal(&SystemImage::abiName, result.abi));
if (image && image->isValid()) { if (image && image->isValid()) {
arguments << "-k" << image->sdkStylePath(); arguments << "-k" << image->sdkStylePath();
// Google api system images requires explicit abi as
// google-apis/ABI or --tag "google-apis"
if (image->sdkStylePath().contains(googleApiTag))
arguments << "--tag" << googleApiTag;
} else { } else {
QString name = result.sdkPlatform->displayText(); QString name = result.sdkPlatform->displayText();
qCDebug(avdManagerLog) << "AVD Create failed. Cannot find system image for the platform" qCDebug(avdManagerLog) << "AVD Create failed. Cannot find system image for the platform"