From 288f69ad6ad5ee63fc97e1a70e6bb9b5805c6695 Mon Sep 17 00:00:00 2001 From: Gabriel Calero Date: Tue, 27 Mar 2018 15:28:12 -0300 Subject: [PATCH 1/2] Detect if Interface is running on an android testing device --- interface/src/Application.cpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 968af3e298..d945ddf6d8 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -377,6 +377,9 @@ static const QString DESKTOP_DISPLAY_PLUGIN_NAME = "Desktop"; static const QString SYSTEM_TABLET = "com.highfidelity.interface.tablet.system"; +#if defined(Q_OS_ANDROID) +static const QString TESTER_FILE = "/sdcard/_hifi_test_device.txt"; +#endif const std::vector> Application::_acceptedExtensions { { SVO_EXTENSION, &Application::importSVOFromURL }, { SVO_JSON_EXTENSION, &Application::importSVOFromURL }, @@ -1281,11 +1284,20 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo // sessionRunTime will be reset soon by loadSettings. Grab it now to get previous session value. // The value will be 0 if the user blew away settings this session, which is both a feature and a bug. static const QString TESTER = "HIFI_TESTER"; + + bool isTester = false; +#if defined (Q_OS_ANDROID) + // Since we cannot set environment variables in Android we use a file presence + // to denote that this is a testing device + QFileInfo check_tester_file(TESTER_FILE); + isTester = check_tester_file.exists() && check_tester_file.isFile(); +#endif + QProcessEnvironment::systemEnvironment().insert(TESTER, "This Value is Great"); auto gpuIdent = GPUIdent::getInstance(); auto glContextData = getGLContextData(); QJsonObject properties = { { "version", applicationVersion() }, - { "tester", QProcessEnvironment::systemEnvironment().contains(TESTER) }, + { "tester", QProcessEnvironment::systemEnvironment().contains(TESTER) || isTester }, { "previousSessionCrashed", _previousSessionCrashed }, { "previousSessionRuntime", sessionRunTime.get() }, { "cpu_architecture", QSysInfo::currentCpuArchitecture() }, @@ -1341,7 +1353,7 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo auto glContextData = getGLContextData(); QJsonObject properties = { { "version", applicationVersion() }, - { "tester", QProcessEnvironment::systemEnvironment().contains(TESTER) }, + { "tester", QProcessEnvironment::systemEnvironment().contains(TESTER) || isTester }, { "previousSessionCrashed", _previousSessionCrashed }, { "previousSessionRuntime", sessionRunTime.get() }, { "cpu_architecture", QSysInfo::currentCpuArchitecture() }, From 6ccffb3c4dac878cda1b2f2ccad499f3c98c1b1f Mon Sep 17 00:00:00 2001 From: Gabriel Date: Tue, 10 Apr 2018 08:24:38 -0300 Subject: [PATCH 2/2] Remove testing line --- interface/src/Application.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index d945ddf6d8..310bbf0b8e 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -1292,7 +1292,6 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo QFileInfo check_tester_file(TESTER_FILE); isTester = check_tester_file.exists() && check_tester_file.isFile(); #endif - QProcessEnvironment::systemEnvironment().insert(TESTER, "This Value is Great"); auto gpuIdent = GPUIdent::getInstance(); auto glContextData = getGLContextData(); QJsonObject properties = {