From f4639a15a56a7664f69973b7593d4b660e108acb Mon Sep 17 00:00:00 2001 From: tobrun Date: Fri, 28 Jun 2019 07:36:59 +0200 Subject: [android] - add UI/Application Exercuser Monkey module --- platform/android/.gitignore | 1 + .../MapboxGLAndroidSDKMonkeyRunner/.gitignore | 1 + .../MapboxGLAndroidSDKMonkeyRunner/README.md | 16 +++++ .../MapboxGLAndroidSDKMonkeyRunner/build.gradle | 21 ++++++ .../src/main/AndroidManifest.xml | 21 ++++++ .../mapboxsdk/testapp/monkey/MainActivity.kt | 67 +++++++++++++++++++ .../res/drawable-v24/ic_launcher_foreground.xml | 34 ++++++++++ .../main/res/drawable/ic_launcher_background.xml | 74 +++++++++++++++++++++ .../src/main/res/layout/activity_main.xml | 14 ++++ .../src/main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 6387 bytes .../main/res/mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 10413 bytes .../src/main/res/values/strings.xml | 3 + .../src/main/res/values/styles.xml | 3 + platform/android/settings.gradle | 2 +- 14 files changed, 256 insertions(+), 1 deletion(-) create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/.gitignore create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/README.md create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/build.gradle create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/AndroidManifest.xml create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/java/com/mapbox/mapboxsdk/testapp/monkey/MainActivity.kt create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/drawable/ic_launcher_background.xml create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/layout/activity_main.xml create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/mipmap-xxhdpi/ic_launcher_round.png create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/values/strings.xml create mode 100644 platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/values/styles.xml diff --git a/platform/android/.gitignore b/platform/android/.gitignore index f5affd93c7..bb6c0196a9 100644 --- a/platform/android/.gitignore +++ b/platform/android/.gitignore @@ -20,6 +20,7 @@ gradle/configuration.gradle # Token file MapboxGLAndroidSDKTestApp/src/main/res/values/developer-config.xml +MapboxGLAndroidSDKMonkeyRunner/src/main/res/values/developer-config.xml # Capture files captures/ diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/.gitignore b/platform/android/MapboxGLAndroidSDKMonkeyRunner/.gitignore new file mode 100644 index 0000000000..796b96d1c4 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKMonkeyRunner/.gitignore @@ -0,0 +1 @@ +/build diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/README.md b/platform/android/MapboxGLAndroidSDKMonkeyRunner/README.md new file mode 100644 index 0000000000..72063591ee --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKMonkeyRunner/README.md @@ -0,0 +1,16 @@ +# Monkey Exerciser + +This module is used to run [UI/Application Monkey Exerciser](https://developer.android.com/studio/test/monkey) on the Mapbox Maps SDK for Android: + +> The Monkey is a program that runs on your emulator or device and generates pseudo-random streams of user events such as clicks, touches, or gestures, as well as a number of system-level events. You can use the Monkey to stress-test applications that you are developing, in a random yet repeatable manner. + +## Setup + + - install app from this module + - pin app on screen (this avoid opening statusbar through monkey exerciser) + - activate with `settings>security>screen pinning` + - press the recents apps button + - each app will support a configuration to pin it + - run an monkey exerciser commands as: + - `adb shell monkey -p com.mapbox.mapboxsdk.testapp.monkey -v --pct-nav 0 --pct-syskeys 0 --pct-anyevent 0 --pct-touch 20 --pct-motion 80 --pct-trackball 0 --monitor-native-crashes 20000` + - `adb shell monkey -p com.mapbox.mapboxsdk.testapp.monkey -v --pct-nav 10 --pct-syskeys 2 --pct-anyevent 2 --pct-touch 44 --pct-motion 40 --pct-trackball 2 --monitor-native-crashes 20000` diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/build.gradle b/platform/android/MapboxGLAndroidSDKMonkeyRunner/build.gradle new file mode 100644 index 0000000000..dc47178310 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKMonkeyRunner/build.gradle @@ -0,0 +1,21 @@ +apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' +apply plugin: 'kotlin-android-extensions' +apply from: "${rootDir}/gradle/gradle-config.gradle" + +android { + compileSdkVersion androidVersions.compileSdkVersion + + defaultConfig { + applicationId "com.mapbox.mapboxsdk.testapp.monkey" + minSdkVersion androidVersions.minSdkVersion + targetSdkVersion androidVersions.targetSdkVersion + versionCode 1 + versionName "0.0.1" + } +} + +dependencies { + implementation project(':MapboxGLAndroidSDK') + implementation dependenciesList.kotlinLib +} diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/AndroidManifest.xml b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..18014b882d --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/AndroidManifest.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/java/com/mapbox/mapboxsdk/testapp/monkey/MainActivity.kt b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/java/com/mapbox/mapboxsdk/testapp/monkey/MainActivity.kt new file mode 100644 index 0000000000..273b62dd9a --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/java/com/mapbox/mapboxsdk/testapp/monkey/MainActivity.kt @@ -0,0 +1,67 @@ +package com.mapbox.mapboxsdk.testapp.monkey + +import android.app.Activity +import android.os.Bundle +import com.mapbox.mapboxsdk.Mapbox +import com.mapbox.mapboxsdk.camera.CameraPosition +import com.mapbox.mapboxsdk.geometry.LatLng +import com.mapbox.mapboxsdk.maps.MapboxMap +import com.mapbox.mapboxsdk.maps.OnMapReadyCallback +import com.mapbox.mapboxsdk.maps.Style +import kotlinx.android.synthetic.main.activity_main.* + +class MainActivity : Activity(), OnMapReadyCallback { + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + Mapbox.getInstance(this, getString(R.string.mapbox_access_token)) + setContentView(R.layout.activity_main) + mapView.onCreate(savedInstanceState) + mapView.getMapAsync(this) + } + + override fun onMapReady(mapboxMap: MapboxMap) { + mapboxMap.cameraPosition = CameraPosition.Builder() + .target(LatLng(51.339090, 12.373603)) + .zoom(12.0) + .build() + mapboxMap.setStyle( + Style.Builder().fromUri(Style.MAPBOX_STREETS) + ) + } + + override fun onStart() { + super.onStart() + mapView.onStart() + } + + override fun onResume() { + super.onResume() + mapView.onResume() + } + + override fun onPause() { + super.onPause() + mapView.onPause() + } + + override fun onStop() { + super.onStop() + mapView.onStop() + } + + override fun onLowMemory() { + super.onLowMemory() + mapView.onLowMemory() + } + + override fun onDestroy() { + super.onDestroy() + mapView.onDestroy() + } + + override fun onSaveInstanceState(outState: Bundle) { + super.onSaveInstanceState(outState) + mapView.onSaveInstanceState(outState) + } +} diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/drawable-v24/ic_launcher_foreground.xml b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/drawable-v24/ic_launcher_foreground.xml new file mode 100644 index 0000000000..6348baae39 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/drawable-v24/ic_launcher_foreground.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/drawable/ic_launcher_background.xml b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 0000000000..a0ad202f9e --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/layout/activity_main.xml b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/layout/activity_main.xml new file mode 100644 index 0000000000..da4fd99177 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/layout/activity_main.xml @@ -0,0 +1,14 @@ + + + + + + \ No newline at end of file diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/mipmap-xxhdpi/ic_launcher.png b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000..b0907cac3b Binary files /dev/null and b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/mipmap-xxhdpi/ic_launcher_round.png new file mode 100644 index 0000000000..d8ae031549 Binary files /dev/null and b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/mipmap-xxhdpi/ic_launcher_round.png differ diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/values/strings.xml b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/values/strings.xml new file mode 100644 index 0000000000..1529d86a34 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/values/strings.xml @@ -0,0 +1,3 @@ + + MapboxGLAndroidSDKMonkeyRunner + diff --git a/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/values/styles.xml b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/values/styles.xml new file mode 100644 index 0000000000..ce786b9b10 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKMonkeyRunner/src/main/res/values/styles.xml @@ -0,0 +1,3 @@ + +