Android: Change pulling of app_process binary to not use readLink

As apparently Samsung devices don't have it. The new algorithm
is:
- If it is a 64 bit device
  - Either pull /system/bin/app_process64 (64bit process)
  - or pull /system/bin/app_process32 (32bit process)
- If it is a 32 bit device
  - First try /system/bin/app_process32
  - If that doesn't exist try /system/bin/app_process

The old code did a symlink resolution on one of app_process[32|64|],
but I believe the symlink resolution was only needed for a symlink
from app_process to app_process32, which is covered by this code.

Change-Id: Iedeeb247c3059931e1ddf6d01e8b2aab13156470
Task-number: QTCREATORBUG-15006
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
This commit is contained in:
Daniel Teske
2015-09-09 17:53:37 +02:00
parent dec37e6df4
commit ac4b3f33d0
2 changed files with 21 additions and 26 deletions

View File

@@ -102,7 +102,6 @@ private:
AndroidDeployQtStep *other);
void ctor();
void runCommand(const QString &program, const QStringList &arguments);
QString systemAppProcessFilePath() const;
bool init();
void run(QFutureInterface<bool> &fi);
@@ -127,7 +126,7 @@ private:
QString m_buildDirectory;
QString m_avdName;
QString m_apkPath;
QString m_appProcess;
QStringList m_appProcessBinaries;
QString m_libdir;
QString m_targetArch;