diff --git a/android_app/app/src/main/java/com/health/openscale/core/OpenScale.java b/android_app/app/src/main/java/com/health/openscale/core/OpenScale.java
index cb7ac06b..2bef4f07 100644
--- a/android_app/app/src/main/java/com/health/openscale/core/OpenScale.java
+++ b/android_app/app/src/main/java/com/health/openscale/core/OpenScale.java
@@ -181,6 +181,7 @@ public class OpenScale {
scaleData.setUserId(getSelectedScaleUser().id);
}
+ // don't add scale data if no user is selected
if (scaleData.getUserId() == -1) {
return -1;
}
@@ -215,6 +216,14 @@ public class OpenScale {
return inRangeWeights.entrySet().iterator().next().getValue();
}
+ SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
+
+ // if ignore out of range preference is true don't add this data
+ if (prefs.getBoolean("ignoreOfOutRange", false)) {
+ return -1;
+ }
+
+ // return selected scale user id if not out of range preference is checked and weight is out of range of any user
return getSelectedScaleUser().id;
}
diff --git a/android_app/app/src/main/java/com/health/openscale/gui/preferences/BluetoothPreferences.java b/android_app/app/src/main/java/com/health/openscale/gui/preferences/BluetoothPreferences.java
index d04618e2..11103e6a 100644
--- a/android_app/app/src/main/java/com/health/openscale/gui/preferences/BluetoothPreferences.java
+++ b/android_app/app/src/main/java/com/health/openscale/gui/preferences/BluetoothPreferences.java
@@ -17,6 +17,7 @@ package com.health.openscale.gui.preferences;
import android.content.SharedPreferences;
import android.os.Bundle;
+import android.preference.CheckBoxPreference;
import android.preference.EditTextPreference;
import android.preference.ListPreference;
import android.preference.MultiSelectListPreference;
@@ -33,10 +34,16 @@ import java.util.Set;
public class BluetoothPreferences extends PreferenceFragment implements SharedPreferences.OnSharedPreferenceChangeListener {
- String[] btDeviceSupportInit;
- String[] btDeviceSupportDataTransfer;
- String[] btDeviceSupportDataHistory;
- String[] btDeviceDefaultName;
+ public static final String PREFERENCE_KEY_BLUETOOTH_SMARTUSERASSIGN = "smartUserAssign";
+ private static final String PREFERENCE_KEY_BLUETOOTH_IGNOREOUTOFRANGE = "ignoreOutOfRange";
+
+ private CheckBoxPreference smartAssignEnable;
+ private CheckBoxPreference ignoreOutOfRangeEnable;
+
+ private String[] btDeviceSupportInit;
+ private String[] btDeviceSupportDataTransfer;
+ private String[] btDeviceSupportDataHistory;
+ private String[] btDeviceDefaultName;
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -44,6 +51,9 @@ public class BluetoothPreferences extends PreferenceFragment implements SharedPr
addPreferencesFromResource(R.xml.bluetooth_preferences);
+ smartAssignEnable = (CheckBoxPreference) findPreference(PREFERENCE_KEY_BLUETOOTH_SMARTUSERASSIGN);
+ ignoreOutOfRangeEnable = (CheckBoxPreference) findPreference(PREFERENCE_KEY_BLUETOOTH_IGNOREOUTOFRANGE);
+
btDeviceSupportInit = getResources().getStringArray(R.array.bt_device_support_initializing);
btDeviceSupportDataTransfer = getResources().getStringArray(R.array.bt_device_support_data_transfer);
btDeviceSupportDataHistory = getResources().getStringArray(R.array.bt_device_support_data_history);
@@ -82,6 +92,12 @@ public class BluetoothPreferences extends PreferenceFragment implements SharedPr
}
private void updatePrefSummary(Preference p) {
+ if (smartAssignEnable.isChecked()) {
+ ignoreOutOfRangeEnable.setEnabled(true);
+ } else {
+ ignoreOutOfRangeEnable.setEnabled(false);
+ }
+
if (p instanceof ListPreference) {
ListPreference listPref = (ListPreference) p;
diff --git a/android_app/app/src/main/res/values-de/strings.xml b/android_app/app/src/main/res/values-de/strings.xml
index e7a9158d..4af152c4 100644
--- a/android_app/app/src/main/res/values-de/strings.xml
+++ b/android_app/app/src/main/res/values-de/strings.xml
@@ -126,4 +126,5 @@
Importiere Datensicherung
Export Ordner
nicht gefunden
+ Ignoriere Daten außerhalb des zulässigen Bereiches
\ No newline at end of file
diff --git a/android_app/app/src/main/res/values/strings.xml b/android_app/app/src/main/res/values/strings.xml
index 4133e10c..ebdaee28 100644
--- a/android_app/app/src/main/res/values/strings.xml
+++ b/android_app/app/src/main/res/values/strings.xml
@@ -145,4 +145,5 @@
Backup
Export dir
not found
+ Ignore data that are out of range
diff --git a/android_app/app/src/main/res/xml/bluetooth_preferences.xml b/android_app/app/src/main/res/xml/bluetooth_preferences.xml
index 4af0b824..f6281199 100644
--- a/android_app/app/src/main/res/xml/bluetooth_preferences.xml
+++ b/android_app/app/src/main/res/xml/bluetooth_preferences.xml
@@ -4,4 +4,5 @@
+
\ No newline at end of file