Android: Three more simple aspects for AndroidBuildApkStep

Change-Id: Ida4012ab21aa6a05d2222f41350065a38618b9b0
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
hjk
2023-08-23 12:04:40 +02:00
parent 5254765e16
commit 91c1fdb457
2 changed files with 13 additions and 46 deletions

View File

@@ -72,7 +72,6 @@ static Q_LOGGING_CATEGORY(buildapkstepLog, "qtc.android.build.androidbuildapkste
const char KeystoreLocationKey[] = "KeystoreLocation"; const char KeystoreLocationKey[] = "KeystoreLocation";
const char BuildTargetSdkKey[] = "BuildTargetSdk"; const char BuildTargetSdkKey[] = "BuildTargetSdk";
const char BuildToolsVersionKey[] = "BuildToolsVersion"; const char BuildToolsVersionKey[] = "BuildToolsVersion";
const char VerboseOutputKey[] = "VerboseOutput";
class PasswordInputDialog : public QDialog class PasswordInputDialog : public QDialog
{ {
@@ -286,11 +285,6 @@ QWidget *AndroidBuildApkWidget::createAdvancedGroup()
{ {
auto group = new QGroupBox(Tr::tr("Advanced Actions"), this); auto group = new QGroupBox(Tr::tr("Advanced Actions"), this);
auto openPackageLocationCheckBox = new QCheckBox(Tr::tr("Open package location after build"), group);
openPackageLocationCheckBox->setChecked(m_step->openPackageLocation());
connect(openPackageLocationCheckBox, &QAbstractButton::toggled,
this, [this](bool checked) { m_step->setOpenPackageLocation(checked); });
m_addDebuggerCheckBox = new QCheckBox(Tr::tr("Add debug server"), group); m_addDebuggerCheckBox = new QCheckBox(Tr::tr("Add debug server"), group);
m_addDebuggerCheckBox->setEnabled(false); m_addDebuggerCheckBox->setEnabled(false);
m_addDebuggerCheckBox->setToolTip(Tr::tr("Packages debug server with " m_addDebuggerCheckBox->setToolTip(Tr::tr("Packages debug server with "
@@ -299,19 +293,13 @@ QWidget *AndroidBuildApkWidget::createAdvancedGroup()
connect(m_addDebuggerCheckBox, &QAbstractButton::toggled, connect(m_addDebuggerCheckBox, &QAbstractButton::toggled,
m_step, &AndroidBuildApkStep::setAddDebugger); m_step, &AndroidBuildApkStep::setAddDebugger);
auto verboseOutputCheckBox = new QCheckBox(Tr::tr("Verbose output"), group);
verboseOutputCheckBox->setChecked(m_step->verboseOutput());
Layouting::Column { Layouting::Column {
m_step->buildAAB, m_step->buildAAB,
openPackageLocationCheckBox, m_step->openPackageLocation,
verboseOutputCheckBox, m_step->verboseOutput,
m_addDebuggerCheckBox m_addDebuggerCheckBox
}.attachTo(group); }.attachTo(group);
connect(verboseOutputCheckBox, &QAbstractButton::toggled,
this, [this](bool checked) { m_step->setVerboseOutput(checked); });
return group; return group;
} }
@@ -476,9 +464,16 @@ AndroidBuildApkStep::AndroidBuildApkStep(BuildStepList *parent, Utils::Id id)
QtSupport::QtVersion *version = QtSupport::QtKitAspect::qtVersion(kit()); QtSupport::QtVersion *version = QtSupport::QtKitAspect::qtVersion(kit());
// FIXME: This is not saved due to missing setSettingsKey(). Intentional?
buildAAB.setLabelText(Tr::tr("Build Android App Bundle (*.aab)")); buildAAB.setLabelText(Tr::tr("Build Android App Bundle (*.aab)"));
buildAAB.setVisible(version && version->qtVersion() >= QVersionNumber(5, 14)); buildAAB.setVisible(version && version->qtVersion() >= QVersionNumber(5, 14));
// FIXME: This is not saved due to missing setSettingsKey(). Intentional?
openPackageLocation.setLabelText(Tr::tr("Open package location after build"));
verboseOutput.setSettingsKey("VerboseOutput");
verboseOutput.setLabelText(Tr::tr("Verbose output"));
connect(this, &BuildStep::addOutput, this, [this](const QString &string, OutputFormat format) { connect(this, &BuildStep::addOutput, this, [this](const QString &string, OutputFormat format) {
if (format == OutputFormat::Stderr) if (format == OutputFormat::Stderr)
stdError(string); stdError(string);
@@ -531,7 +526,7 @@ bool AndroidBuildApkStep::init()
return false; return false;
} }
m_openPackageLocationForRun = m_openPackageLocation; m_openPackageLocationForRun = openPackageLocation();
const FilePath outputDir = AndroidManager::androidBuildDirectory(target()); const FilePath outputDir = AndroidManager::androidBuildDirectory(target());
m_packagePath = AndroidManager::packagePath(target()); m_packagePath = AndroidManager::packagePath(target());
@@ -561,7 +556,7 @@ bool AndroidBuildApkStep::init()
"--android-platform", m_buildTargetSdk, "--android-platform", m_buildTargetSdk,
"--jdk", AndroidConfigurations::currentConfig().openJDKLocation().path()}; "--jdk", AndroidConfigurations::currentConfig().openJDKLocation().path()};
if (m_verbose) if (verboseOutput())
arguments << "--verbose"; arguments << "--verbose";
arguments << "--gradle"; arguments << "--gradle";
@@ -889,7 +884,6 @@ void AndroidBuildApkStep::fromMap(const Store &map)
m_buildTargetSdk = AndroidConfig::apiLevelNameFor(AndroidConfigurations:: m_buildTargetSdk = AndroidConfig::apiLevelNameFor(AndroidConfigurations::
sdkManager()->latestAndroidSdkPlatform()); sdkManager()->latestAndroidSdkPlatform());
} }
m_verbose = map.value(VerboseOutputKey).toBool();
ProjectExplorer::BuildStep::fromMap(map); ProjectExplorer::BuildStep::fromMap(map);
} }
@@ -899,7 +893,6 @@ void AndroidBuildApkStep::toMap(Store &map) const
map.insert(KeystoreLocationKey, m_keystorePath.toSettings()); map.insert(KeystoreLocationKey, m_keystorePath.toSettings());
map.insert(BuildTargetSdkKey, m_buildTargetSdk); map.insert(BuildTargetSdkKey, m_buildTargetSdk);
map.insert(BuildToolsVersionKey, m_buildToolsVersion.toString()); map.insert(BuildToolsVersionKey, m_buildToolsVersion.toString());
map.insert(VerboseOutputKey, m_verbose);
} }
Utils::FilePath AndroidBuildApkStep::keystorePath() const Utils::FilePath AndroidBuildApkStep::keystorePath() const
@@ -997,21 +990,6 @@ void AndroidBuildApkStep::setSignPackage(bool b)
m_signPackage = b; m_signPackage = b;
} }
bool AndroidBuildApkStep::openPackageLocation() const
{
return m_openPackageLocation;
}
void AndroidBuildApkStep::setOpenPackageLocation(bool open)
{
m_openPackageLocation = open;
}
void AndroidBuildApkStep::setVerboseOutput(bool verbose)
{
m_verbose = verbose;
}
bool AndroidBuildApkStep::addDebugger() const bool AndroidBuildApkStep::addDebugger() const
{ {
return m_addDebugger; return m_addDebugger;
@@ -1022,11 +1000,6 @@ void AndroidBuildApkStep::setAddDebugger(bool debug)
m_addDebugger = debug; m_addDebugger = debug;
} }
bool AndroidBuildApkStep::verboseOutput() const
{
return m_verbose;
}
QAbstractItemModel *AndroidBuildApkStep::keystoreCertificates() QAbstractItemModel *AndroidBuildApkStep::keystoreCertificates()
{ {
// check keystore passwords // check keystore passwords

View File

@@ -38,12 +38,8 @@ public:
void setSignPackage(bool b); void setSignPackage(bool b);
Utils::BoolAspect buildAAB{this}; Utils::BoolAspect buildAAB{this};
Utils::BoolAspect openPackageLocation{this};
bool openPackageLocation() const; Utils::BoolAspect verboseOutput{this};
void setOpenPackageLocation(bool open);
bool verboseOutput() const;
void setVerboseOutput(bool verbose);
bool addDebugger() const; bool addDebugger() const;
void setAddDebugger(bool debug); void setAddDebugger(bool debug);
@@ -72,8 +68,6 @@ private:
void updateBuildToolsVersionInJsonFile(); void updateBuildToolsVersionInJsonFile();
bool m_signPackage = false; bool m_signPackage = false;
bool m_verbose = false;
bool m_openPackageLocation = false;
bool m_openPackageLocationForRun = false; bool m_openPackageLocationForRun = false;
bool m_addDebugger = true; bool m_addDebugger = true;
QString m_buildTargetSdk; QString m_buildTargetSdk;