forked from qt-creator/qt-creator
Android: Pass RunWorker to AndroidRunnerWorker
The RunWorker will carry the amPreStart/amPostFinish commands later, and the run control is still accessible via worker->runControl(). Change-Id: Ieac1a1d2a5a8689025a7707b218df44ef2485b16 Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
This commit is contained in:
@@ -142,7 +142,7 @@ AndroidRunner::AndroidRunner(RunControl *runControl,
|
|||||||
}
|
}
|
||||||
|
|
||||||
const int apiLevel = AndroidManager::deviceApiLevel(m_target);
|
const int apiLevel = AndroidManager::deviceApiLevel(m_target);
|
||||||
m_worker.reset(new AndroidRunnerWorker(runControl, m_androidRunnable));
|
m_worker.reset(new AndroidRunnerWorker(this, m_androidRunnable));
|
||||||
m_worker->setIntentName(intent);
|
m_worker->setIntentName(intent);
|
||||||
m_worker->setIsPreNougat(apiLevel <= 23);
|
m_worker->setIsPreNougat(apiLevel <= 23);
|
||||||
m_worker->setExtraAppParams(extraAppParams);
|
m_worker->setExtraAppParams(extraAppParams);
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ static void deleter(QProcess *p)
|
|||||||
p->deleteLater();
|
p->deleteLater();
|
||||||
}
|
}
|
||||||
|
|
||||||
AndroidRunnerWorker::AndroidRunnerWorker(RunControl *runControl, const AndroidRunnable &runnable)
|
AndroidRunnerWorker::AndroidRunnerWorker(RunWorker *runner, const AndroidRunnable &runnable)
|
||||||
: m_androidRunnable(runnable)
|
: m_androidRunnable(runnable)
|
||||||
, m_adbLogcatProcess(nullptr, deleter)
|
, m_adbLogcatProcess(nullptr, deleter)
|
||||||
, m_psIsAlive(nullptr, deleter)
|
, m_psIsAlive(nullptr, deleter)
|
||||||
@@ -149,9 +149,9 @@ AndroidRunnerWorker::AndroidRunnerWorker(RunControl *runControl, const AndroidRu
|
|||||||
, m_jdbProcess(nullptr, deleter)
|
, m_jdbProcess(nullptr, deleter)
|
||||||
|
|
||||||
{
|
{
|
||||||
auto runConfig = runControl->runConfiguration();
|
auto runConfig = runner->runControl()->runConfiguration();
|
||||||
auto aspect = runConfig->extraAspect<Debugger::DebuggerRunConfigurationAspect>();
|
auto aspect = runConfig->extraAspect<Debugger::DebuggerRunConfigurationAspect>();
|
||||||
Core::Id runMode = runControl->runMode();
|
Core::Id runMode = runner->runMode();
|
||||||
const bool debuggingMode = runMode == ProjectExplorer::Constants::DEBUG_RUN_MODE;
|
const bool debuggingMode = runMode == ProjectExplorer::Constants::DEBUG_RUN_MODE;
|
||||||
m_useCppDebugger = debuggingMode && aspect->useCppDebugger();
|
m_useCppDebugger = debuggingMode && aspect->useCppDebugger();
|
||||||
if (debuggingMode && aspect->useQmlDebugger())
|
if (debuggingMode && aspect->useQmlDebugger())
|
||||||
|
|||||||
@@ -32,10 +32,6 @@
|
|||||||
|
|
||||||
#include "androidrunnable.h"
|
#include "androidrunnable.h"
|
||||||
|
|
||||||
namespace ProjectExplorer {
|
|
||||||
class RunControl;
|
|
||||||
}
|
|
||||||
|
|
||||||
namespace Android {
|
namespace Android {
|
||||||
|
|
||||||
class AndroidDeviceInfo;
|
class AndroidDeviceInfo;
|
||||||
@@ -48,7 +44,7 @@ class AndroidRunnerWorker : public QObject
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
AndroidRunnerWorker(ProjectExplorer::RunControl *runControl, const AndroidRunnable &runnable);
|
AndroidRunnerWorker(ProjectExplorer::RunWorker *runner, const AndroidRunnable &runnable);
|
||||||
~AndroidRunnerWorker() override;
|
~AndroidRunnerWorker() override;
|
||||||
bool adbShellAmNeedsQuotes();
|
bool adbShellAmNeedsQuotes();
|
||||||
bool runAdb(const QStringList &args, int timeoutS = 10);
|
bool runAdb(const QStringList &args, int timeoutS = 10);
|
||||||
|
|||||||
Reference in New Issue
Block a user