forked from qt-creator/qt-creator
Android multi arch support
[ChangeLog][Android] Android multi arch support for qmake Change-Id: Ib8b1874604a3392130c96fbc00b26713b3d788ae Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
committed by
BogDan Vatra
parent
567a20843f
commit
6b31f9cf23
@@ -236,7 +236,7 @@ class AndroidDeviceModel : public QAbstractItemModel
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
AndroidDeviceModel(int apiLevel, const QString &abi);
|
||||
AndroidDeviceModel(int apiLevel, const QStringList &abis);
|
||||
QModelIndex index(int row, int column,
|
||||
const QModelIndex &parent = QModelIndex()) const override;
|
||||
QModelIndex parent(const QModelIndex &child) const override;
|
||||
@@ -251,7 +251,7 @@ public:
|
||||
QModelIndex indexFor(AndroidDeviceInfo::AndroidDeviceType type, const QString &serial);
|
||||
private:
|
||||
int m_apiLevel;
|
||||
QString m_abi;
|
||||
QStringList m_abis;
|
||||
AndroidDeviceModelNode *m_root;
|
||||
};
|
||||
|
||||
@@ -260,8 +260,8 @@ private:
|
||||
/////////////////
|
||||
// AndroidDeviceModel
|
||||
/////////////////
|
||||
AndroidDeviceModel::AndroidDeviceModel(int apiLevel, const QString &abi)
|
||||
: m_apiLevel(apiLevel), m_abi(abi), m_root(nullptr)
|
||||
AndroidDeviceModel::AndroidDeviceModel(int apiLevel, const QStringList &abis)
|
||||
: m_apiLevel(apiLevel), m_abis(abis), m_root(nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -364,7 +364,7 @@ void AndroidDeviceModel::setDevices(const QVector<AndroidDeviceInfo> &devices)
|
||||
}else if (device.state == AndroidDeviceInfo::OfflineState) {
|
||||
error = AndroidDeviceDialog::tr("Offline. Please check the state of your device %1.")
|
||||
.arg(device.serialNumber);
|
||||
} else if (!device.cpuAbi.contains(m_abi)) {
|
||||
} else if (!AndroidManager::matchedAbis(device.cpuAbi, m_abis)) {
|
||||
error = AndroidDeviceDialog::tr("ABI is incompatible, device supports ABIs: %1.")
|
||||
.arg(device.cpuAbi.join(QLatin1Char(' ')));
|
||||
} else if (device.sdk < m_apiLevel) {
|
||||
@@ -413,13 +413,13 @@ static inline QString msgAdbListDevices()
|
||||
return AndroidDeviceDialog::tr("<p>The adb tool in the Android SDK lists all connected devices if run via "adb devices".</p>");
|
||||
}
|
||||
|
||||
AndroidDeviceDialog::AndroidDeviceDialog(int apiLevel, const QString &abi,
|
||||
AndroidDeviceDialog::AndroidDeviceDialog(int apiLevel, const QStringList &abis,
|
||||
const QString &serialNumber, QWidget *parent) :
|
||||
QDialog(parent),
|
||||
m_model(new AndroidDeviceModel(apiLevel, abi)),
|
||||
m_model(new AndroidDeviceModel(apiLevel, abis)),
|
||||
m_ui(new Ui::AndroidDeviceDialog),
|
||||
m_apiLevel(apiLevel),
|
||||
m_abi(abi),
|
||||
m_abis(abis),
|
||||
m_defaultDevice(serialNumber),
|
||||
m_avdManager(new AndroidAvdManager)
|
||||
{
|
||||
@@ -431,7 +431,7 @@ AndroidDeviceDialog::AndroidDeviceDialog(int apiLevel, const QString &abi,
|
||||
m_ui->deviceView->setUniformRowHeights(true);
|
||||
m_ui->deviceView->setExpandsOnDoubleClick(false);
|
||||
|
||||
m_ui->defaultDeviceCheckBox->setText(tr("Always use this device for architecture %1 for this project").arg(abi));
|
||||
m_ui->defaultDeviceCheckBox->setText(tr("Always use this device for this project"));
|
||||
|
||||
m_ui->noDeviceFoundLabel->setText(QLatin1String("<p align=\"center\"><span style=\" font-size:16pt;\">")
|
||||
+ tr("No Device Found") + QLatin1String("</span></p><br/>")
|
||||
@@ -578,7 +578,7 @@ void AndroidDeviceDialog::createAvd()
|
||||
{
|
||||
m_ui->createAVDButton->setEnabled(false);
|
||||
CreateAvdInfo info = AvdDialog::gatherCreateAVDInfo(this, AndroidConfigurations::sdkManager(),
|
||||
m_apiLevel, m_abi);
|
||||
m_apiLevel, m_abis);
|
||||
|
||||
if (!info.isValid()) {
|
||||
m_ui->createAVDButton->setEnabled(true);
|
||||
|
||||
Reference in New Issue
Block a user