From 6b23a1272e0fb0fc719044c3a2fe304cc322b753 Mon Sep 17 00:00:00 2001 From: oliexdev Date: Tue, 19 Mar 2019 19:33:12 +0100 Subject: [PATCH] added build types for light and pro version of openScale --- android_app/app/build.gradle | 33 +++++++++--------- .../health/openscale/gui/MainActivity.java | 18 ++++++++++ android_app/build.gradle | 2 +- doc/sync/openscale_sync.png | Bin 0 -> 2705 bytes 4 files changed, 36 insertions(+), 17 deletions(-) create mode 100644 doc/sync/openscale_sync.png diff --git a/android_app/app/build.gradle b/android_app/app/build.gradle index 25b1eef8..7d43366c 100644 --- a/android_app/app/build.gradle +++ b/android_app/app/build.gradle @@ -2,37 +2,46 @@ apply plugin: 'com.android.application' android { compileSdkVersion 28 - defaultConfig { applicationId "com.health.openscale" testApplicationId "com.health.openscale.test" minSdkVersion 19 targetSdkVersion 28 - versionCode 42 - versionName "2.0.1" + versionCode 43 + versionName "2.0.2" javaCompileOptions { - annotationProcessorOptions { arguments = ["room.schemaLocation":"$projectDir/schemas".toString()] } + annotationProcessorOptions { + arguments = ["room.schemaLocation": "$projectDir/schemas".toString()] + } } testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } - sourceSets { androidTest.assets.srcDirs += files("$projectDir/schemas".toString()) } - lintOptions { abortOnError false } - buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' } + light { + applicationIdSuffix ".light" + versionNameSuffix "-light" + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + } + pro { + applicationIdSuffix ".pro" + versionNameSuffix "-pro" + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + } } - compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 @@ -44,33 +53,25 @@ dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.0.2' implementation 'androidx.recyclerview:recyclerview:1.0.0' - // MPAndroidChart implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0-alpha' - // Simple CSV implementation 'com.j256.simplecsv:simplecsv:2.3' - // RxAndroidBle implementation 'com.polidea.rxandroidble2:rxandroidble:1.8.2' implementation 'io.reactivex.rxjava2:rxjava:2.2.7' implementation 'io.reactivex.rxjava2:rxandroid:2.1.0' implementation 'com.jakewharton.rx2:replaying-share:2.1.0' - // CustomActivityOnCrash implementation 'cat.ereza:customactivityoncrash:2.2.0' - // Room implementation 'androidx.room:room-runtime:2.1.0-alpha04' annotationProcessor 'androidx.room:room-compiler:2.1.0-alpha04' androidTestImplementation 'androidx.room:room-testing:2.1.0-alpha04' - // Timber implementation 'com.jakewharton.timber:timber:4.7.1' - // Local unit tests testImplementation 'junit:junit:4.12' - // Instrumented unit tests androidTestImplementation 'androidx.annotation:annotation:1.0.0' androidTestImplementation 'androidx.test.ext:junit:1.1.0' diff --git a/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java b/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java index ce93a572..ad617c73 100644 --- a/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java +++ b/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java @@ -29,8 +29,11 @@ import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.preference.PreferenceManager; +import android.text.Html; +import android.text.method.LinkMovementMethod; import android.view.Menu; import android.view.MenuItem; +import android.widget.TextView; import android.widget.Toast; import com.google.android.material.bottomnavigation.BottomNavigationView; @@ -437,6 +440,21 @@ public class MainActivity extends BaseAppCompatActivity } private void invokeConnectToBluetoothDevice() { + if (BuildConfig.BUILD_TYPE == "light") { + AlertDialog infoDialog = new AlertDialog.Builder(this) + .setMessage(Html.fromHtml("Please upgrade to the openScale pro version to enable Bluetooth support")) + .setPositiveButton(getResources().getString(R.string.label_ok), null) + .setIcon(R.drawable.ic_launcher_openscale) + .setTitle("openScale " + BuildConfig.VERSION_NAME) + .create(); + + infoDialog.show(); + + ((TextView)infoDialog.findViewById(android.R.id.message)).setMovementMethod(LinkMovementMethod.getInstance()); + + return; + } + final OpenScale openScale = OpenScale.getInstance(); if (openScale.getSelectedScaleUserId() == -1) { diff --git a/android_app/build.gradle b/android_app/build.gradle index 2cbcdd39..28fae37e 100644 --- a/android_app/build.gradle +++ b/android_app/build.gradle @@ -5,7 +5,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.3.1' + classpath 'com.android.tools.build:gradle:3.3.2' } } diff --git a/doc/sync/openscale_sync.png b/doc/sync/openscale_sync.png new file mode 100644 index 0000000000000000000000000000000000000000..2e4e543f6991515f87b62e5ba3983d6e0d936145 GIT binary patch literal 2705 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 LNkvXXu0mjfX2U&} literal 0 HcmV?d00001