- Android 4.1+ / API 16+ ("JellyBean" or above)
- "Normal" screen size or higher
- "High Density (hdpi)" or better
See Android versions dashboard for more information:
The application was designed and tested on "Nexus 4".
-
Install Java JDK version 1.7 or higher from http://www.oracle.com/technetwork/java/javase/downloads/index.html
-
Install Android SDK from https://developer.android.com/sdk/index.html or homebrew with the command:
brew install android-sdk
-
Make sure to install the latest android SDK using the following command:
android update sdk
-
The project is based on
gradle
and the new Android Studio IDE. It will NOT work with the legacy eclipse IDE. You can downloaded Android Studio IDE from https://developer.android.com/sdk/installing/studio.html
-
Add
gradle.properties
file to your android folder with the following values:# Google Analytics Tracking ID systemProp.GA_TRACKING_ID = "UA-XXXXXXXX-X" # Email address to send user feedback systemProp.FEEDBACK_EMAIL = "[email protected]" # AWS Cognito Identity Pool ID # # Taurus uses the Amazon Cognito Identity service and AWS Security Token Service to create # temporary, short-lived sessions used for authentication # DynamoDB Tables accessible by Taurus should be given read access to the roles associated # with the cognito pool id # For more information on how to setup these roles please refer to AWS Cognito documentation systemProp.COGNITO_POOL_ID = "us-east-1:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx" # Keystore password systemProp.BUILD_PASSWORD = "CHANGEME"
-
Add
local.properties
file to your android folder with the following values:sdk.dir=/usr/local/opt/android-sdk
-
This project includes the gradle wrapper so there is no need to install
gradle
separately. -
To build execute
gradlew build
-
To test, launch the emulator first or plug your device in via USB, then execute:
gradlew connectedCheck
-
The test reports will be generated in build/outputs/reports folder:
android/build/taurus-mobile/outputs/reports/androidTests/connected/index.html
See tests/behavioral/TaurusMobileApp/README.md
In order to run the pipeline, you need to ensure a couple things are setup properly locally.
- Ensure the Products repo is on your
PYTHONPATH
- Run
pip install -r pipeline/requirements.txt
- Your Application Signing keystore file must be located at
/etc/numenta/products/keys/grok.keystore
. See mobile-core/android/common.gradle for ways to override the default location. ANDROID_HOME
environment variable should be set to the location of your Android SDK (alternatively, set this inlocal.properties
)BUILD_PASSWORD
environment variable must be set properly- Run an Android device locally. You can get a list of devices using
android list avd
and launch one usingemulator -avd <avd_name>
. To create a new device useandroid avd
command. SAUCE_USER_NAME
environment variable must be set to Saucelabs usernameSAUCE_KEY
environment variable must be set to Saucelabs key- Set the
JAVA_HOME
variable in your environment to match the location of your Java installation.
-
Docker container
-
Install
VirtualBox
from https://www.virtualbox.org/wiki/Downloads -
Install
vagrant
from http://www.vagrantup.com/downloads.html or homebrew:brew install vagrant
-
Install
docker
client from http://docs.docker.com/installation or homebrew:brew install docker
-
Start
docker
container:vagrant up
-
-
Docker image
-
Copy your Application Signing keystore file to
.keys/grok.keystore
directory:mkdir .keys cp /etc/numenta/products/keys/grok.keystore .key/grok.keystore
-
Build docker image:
docker build -t taurus-mobile .
-
Run default build on docker mapping your repository root directory to
/opt/numenta/products
, for example:docker run --name taurus-mobile --rm -v `pwd`/..:/opt/numenta/products taurus-mobile
-
Run custom build on docker:
docker run --name taurus-mobile --rm -v `pwd`/..:/opt/numenta/products taurus-mobile ./gradlew clean assembleQa
-