From 6fa58fce1f22c1bd3efa838feff1566d41d00f2b Mon Sep 17 00:00:00 2001 From: Gabriel Date: Tue, 29 May 2018 16:42:09 -0300 Subject: [PATCH 1/4] Update Application.cpp Remove the mic bar for android --- interface/src/Application.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 6a102f418b..b4372cf8c2 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -3011,9 +3011,11 @@ void Application::onDesktopRootItemCreated(QQuickItem* rootItem) { auto surfaceContext = DependencyManager::get()->getSurfaceContext(); surfaceContext->setContextProperty("Stats", Stats::getInstance()); +#if !defined(Q_OS_ANDROID) auto offscreenUi = DependencyManager::get(); auto qml = PathUtils::qmlUrl("AvatarInputsBar.qml"); offscreenUi->show(qml, "AvatarInputsBar"); +#endif } void Application::updateCamera(RenderArgs& renderArgs, float deltaTime) { From 3f696df3a50fc26e2f3c6ef6a4ca57d42d362d8f Mon Sep 17 00:00:00 2001 From: Gabriel Calero Date: Tue, 29 May 2018 17:21:44 -0300 Subject: [PATCH 2/4] Show stats button only in debug mode. Add isDebugMode to Script public interface --- libraries/script-engine/src/ScriptEngine.cpp | 8 ++++++++ libraries/script-engine/src/ScriptEngine.h | 6 ++++++ scripts/+android/defaultScripts.js | 17 +++++++++++++++-- scripts/system/+android/stats.js | 2 +- 4 files changed, 30 insertions(+), 3 deletions(-) diff --git a/libraries/script-engine/src/ScriptEngine.cpp b/libraries/script-engine/src/ScriptEngine.cpp index 23ffbabe77..72860acbc5 100644 --- a/libraries/script-engine/src/ScriptEngine.cpp +++ b/libraries/script-engine/src/ScriptEngine.cpp @@ -237,6 +237,14 @@ QString ScriptEngine::getContext() const { return "unknown"; } +bool ScriptEngine::isDebugMode() const { +#if defined(DEBUG) + return true; +#else + return false; +#endif +} + ScriptEngine::~ScriptEngine() { auto scriptEngines = DependencyManager::get(); if (scriptEngines) { diff --git a/libraries/script-engine/src/ScriptEngine.h b/libraries/script-engine/src/ScriptEngine.h index 3001666b5d..c02a63ef3c 100644 --- a/libraries/script-engine/src/ScriptEngine.h +++ b/libraries/script-engine/src/ScriptEngine.h @@ -232,6 +232,12 @@ public: */ Q_INVOKABLE bool isClientScript() const { return _context == CLIENT_SCRIPT; } + /**jsdoc + * @function Script.isDebugMode + * @returns {boolean} + */ + Q_INVOKABLE bool isDebugMode() const; + /**jsdoc * @function Script.isEntityClientScript * @returns {boolean} diff --git a/scripts/+android/defaultScripts.js b/scripts/+android/defaultScripts.js index 98fbb4b1a7..8950af808d 100644 --- a/scripts/+android/defaultScripts.js +++ b/scripts/+android/defaultScripts.js @@ -16,8 +16,7 @@ var DEFAULT_SCRIPTS_COMBINED = [ "system/+android/touchscreenvirtualpad.js", "system/+android/actionbar.js", "system/+android/audio.js" , - "system/+android/modes.js", - "system/+android/stats.js"/*, + "system/+android/modes.js"/*, "system/away.js", "system/controllers/controllerDisplayManager.js", "system/controllers/handControllerGrabAndroid.js", @@ -33,6 +32,10 @@ var DEFAULT_SCRIPTS_COMBINED = [ "developer/debugging/debugAndroidMouse.js"*/ ]; +var DEBUG_SCRIPTS = [ + "system/+android/stats.js" +]; + var DEFAULT_SCRIPTS_SEPARATE = [ ]; // add a menu item for debugging @@ -70,6 +73,11 @@ function runDefaultsTogether() { for (var i in DEFAULT_SCRIPTS_COMBINED) { Script.include(DEFAULT_SCRIPTS_COMBINED[i]); } + if (Script.isDebugMode()) { + for (var i in DEBUG_SCRIPTS) { + Script.include(DEBUG_SCRIPTS[i]); + } + } loadSeparateDefaults(); } @@ -77,6 +85,11 @@ function runDefaultsSeparately() { for (var i in DEFAULT_SCRIPTS_COMBINED) { Script.load(DEFAULT_SCRIPTS_COMBINED[i]); } + if (Script.isDebugMode()) { + for (var i in DEBUG_SCRIPTS) { + Script.load(DEBUG_SCRIPTS[i]); + } + } loadSeparateDefaults(); } diff --git a/scripts/system/+android/stats.js b/scripts/system/+android/stats.js index a93bcb5794..0731684291 100644 --- a/scripts/system/+android/stats.js +++ b/scripts/system/+android/stats.js @@ -30,7 +30,7 @@ function init() { text: "STATS" }); statsButton.clicked.connect(function() { - Menu.triggerOption("Stats"); + Menu.triggerOption("Show Statistics"); }); } From 785c0b634d1e98117815e280ab45260177ff32bd Mon Sep 17 00:00:00 2001 From: Gabriel Calero Date: Fri, 25 May 2018 17:42:41 -0300 Subject: [PATCH 3/4] Change gradle configuration to sign release apk. Remove Daydream intent from AndroidManifest --- android/app/build.gradle | 9 +++++++++ android/app/src/main/AndroidManifest.xml | 6 ------ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 70f7c622a0..5f92417ba4 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -27,6 +27,14 @@ android { '-DDISABLE_KTX_CACHE=OFF' } } + signingConfigs { + release { + storeFile file(HIFI_ANDROID_KEYSTORE) + storePassword HIFI_ANDROID_KEYSTORE_PASSWORD + keyAlias HIFI_ANDROID_KEY_ALIAS + keyPassword HIFI_ANDROID_KEY_PASSWORD + } + } } compileOptions { @@ -38,6 +46,7 @@ android { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + signingConfig signingConfigs.release } } diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index e105f5bccf..0b52046057 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -49,12 +49,6 @@ android:label="@string/app_name" android:launchMode="singleTop" > - - - - - - From a0274f8b4bac07ae45f70efcbc670202c0f14078 Mon Sep 17 00:00:00 2001 From: Gabriel Calero Date: Wed, 30 May 2018 12:43:44 -0300 Subject: [PATCH 4/4] Make APK release signature optional --- android/app/build.gradle | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 5f92417ba4..46de9642d9 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -29,10 +29,10 @@ android { } signingConfigs { release { - storeFile file(HIFI_ANDROID_KEYSTORE) - storePassword HIFI_ANDROID_KEYSTORE_PASSWORD - keyAlias HIFI_ANDROID_KEY_ALIAS - keyPassword HIFI_ANDROID_KEY_PASSWORD + storeFile project.hasProperty("HIFI_ANDROID_KEYSTORE") ? file(HIFI_ANDROID_KEYSTORE) : null + storePassword project.hasProperty("HIFI_ANDROID_KEYSTORE_PASSWORD") ? HIFI_ANDROID_KEYSTORE_PASSWORD : '' + keyAlias project.hasProperty("HIFI_ANDROID_KEY_ALIAS") ? HIFI_ANDROID_KEY_ALIAS : '' + keyPassword project.hasProperty("HIFI_ANDROID_KEY_PASSWORD") ? HIFI_ANDROID_KEY_PASSWORD : '' } } } @@ -46,7 +46,10 @@ android { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - signingConfig signingConfigs.release + signingConfig project.hasProperty("HIFI_ANDROID_KEYSTORE") && + project.hasProperty("HIFI_ANDROID_KEYSTORE_PASSWORD") && + project.hasProperty("HIFI_ANDROID_KEY_ALIAS") && + project.hasProperty("HIFI_ANDROID_KEY_PASSWORD")? signingConfigs.release : null } }