Skip to content

Commit 4443f3c

Browse files
author
Paolo Rotolo
authored
Merge pull request #360 from Glucosio/develop
Releasing 1.4.0
2 parents 195fa55 + 8353fae commit 4443f3c

File tree

42 files changed

+1297
-147
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+1297
-147
lines changed

README.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,15 @@ Glucosio for Android, a user centered free and open source app for Diabetes mana
2323

2424
Read more about contributing to Glucosio [here](http://www.glucosio.org/contribute/).
2525

26-
## Download on Google Play Store
27-
<a href="https://play.google.com/store/apps/details?id=org.glucosio.android&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1"><img alt="Get it on Google Play" height="80" src="https://play.google.com/intl/en_us/badges/images/apps/en-play-badge.png" /></a>
26+
## Download
27+
28+
<a href="https://play.google.com/store/apps/details?id=org.glucosio.android&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1" target="_blank">
29+
<img src="https://play.google.com/intl/en_us/badges/images/generic/en-play-badge.png" alt="Get it on Google Play" height="100"/></a>
30+
<a href="https://f-droid.org/repository/browse/?fdid=org.glucosio.android" target="_blank">
31+
<img src="https://f-droid.org/badge/get-it-on.png" alt="Get it on F-Droid" height="100"/></a>
2832

2933
## Join Beta Testing
3034
Join our [Community on Google+](https://plus.google.com/communities/117048486613219870727), then [click here](https://play.google.com/apps/testing/org.glucosio.android).
3135

3236
## Test Drive Glucosio Daily
3337
http://daily.glucosio.org
34-
35-
36-

app/build.gradle

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@
1919
*/
2020

2121
apply plugin: 'com.android.application'
22-
apply plugin: 'realm-android'
2322
apply plugin: 'com.neenbedankt.android-apt'
2423
apply plugin: 'jacoco'
24+
apply plugin: 'realm-android'
2525

2626
android {
2727
compileSdkVersion 25
@@ -34,8 +34,8 @@ android {
3434
defaultConfig {
3535
minSdkVersion 16
3636
targetSdkVersion 25
37-
versionCode 40
38-
versionName '1.3.2'
37+
versionCode 41
38+
versionName '1.4.0'
3939
applicationId 'org.glucosio.android'
4040

4141
vectorDrawables.useSupportLibrary = true
@@ -98,7 +98,7 @@ dependencies {
9898
compile fileTree(include: ['*.jar'], dir: 'libs')
9999

100100
// Android Support libraries
101-
compile 'com.google.android.support:wearable:1.4.0'
101+
compile 'com.google.android.support:wearable:2.0.0'
102102

103103
compile "com.android.support:appcompat-v7:${androidSupportVer}"
104104
compile "com.android.support:design:${androidSupportVer}"
@@ -122,7 +122,7 @@ dependencies {
122122
compile 'com.github.paolorotolo:expandableheightlistview:1.0.0'
123123
compile 'com.github.clans:fab:1.6.4'
124124
compile 'com.wdullaer:materialdatetimepicker:2.4.0'
125-
compile 'com.github.PhilJay:MPAndroidChart:v2.2.5'
125+
compile 'com.github.PhilJay:MPAndroidChart:v3.0.1'
126126
compile 'uk.co.chrisjenx:calligraphy:2.2.0'
127127
compile 'net.danlew:android.joda:2.9.5.1'
128128
compile('com.mikepenz:materialdrawer:5.8.1@aar') {
@@ -155,8 +155,8 @@ dependencies {
155155
testCompile "org.powermock:powermock-classloading-xstream:1.6.4"
156156

157157
// Testing libraries
158-
androidTestCompile 'com.android.support.test:rules:0.4.1'
159-
androidTestCompile 'com.android.support.test:runner:0.4.1'
158+
androidTestCompile 'com.android.support.test:rules:0.5'
159+
androidTestCompile 'com.android.support.test:runner:0.5'
160160
androidTestCompile "com.android.support:support-annotations:${androidSupportVer}"
161161
androidTestCompile "com.android.support:recyclerview-v7:${androidSupportVer}"
162162
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2'

app/src/main/AndroidManifest.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,9 @@
150150
android:name="android.support.PARENT_ACTIVITY"
151151
android:value="org.glucosio.android.activity.MainActivity" />
152152
</activity>
153-
<activity android:name=".activity.FreestyleLibreActivity">
153+
<activity
154+
android:name=".activity.FreestyleLibreActivity"
155+
android:screenOrientation="portrait">
154156

155157
<!-- NFC for FreeStyle -->
156158
<intent-filter>

app/src/main/java/org/glucosio/android/activity/FreestyleLibreActivity.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,10 @@
3535
import android.widget.TextView;
3636
import android.widget.Toast;
3737

38+
import org.glucosio.android.GlucosioApplication;
3839
import org.glucosio.android.R;
3940
import org.glucosio.android.db.DatabaseHandler;
41+
import org.glucosio.android.db.User;
4042
import org.glucosio.android.object.PredictionData;
4143
import org.glucosio.android.object.ReadingData;
4244
import org.glucosio.android.tools.AlgorithmUtil;
@@ -51,6 +53,7 @@ public class FreestyleLibreActivity extends Activity {
5153

5254
private NfcAdapter mNfcAdapter;
5355
private TextView readingTextView;
56+
private User user;
5457

5558
/**
5659
* @param activity The corresponding {@link Activity} requesting the foreground dispatch.
@@ -88,6 +91,10 @@ protected void onCreate(Bundle savedInstanceState) {
8891
super.onCreate(savedInstanceState);
8992
setContentView(R.layout.activity_freestyle_libre);
9093

94+
final GlucosioApplication app = (GlucosioApplication) getApplicationContext();
95+
DatabaseHandler dB = app.getDBHandler();
96+
user = dB.getUser(1);
97+
9198
mNfcAdapter = NfcAdapter.getDefaultAdapter(this);
9299
readingTextView = (TextView) findViewById(R.id.activity_freestyle_textview_reading);
93100
Button saveButton = (Button) findViewById(R.id.activity_freestyle_button_save);
@@ -168,8 +175,7 @@ private void showReadingLayout() {
168175
mFinishAfterSentMessages = true;*/
169176

170177
// Apply values in TextViews
171-
// TODO: Add check for mmol/L
172-
readingTextView.setText(mResult.trend.get(0).glucose(false));
178+
readingTextView.setText(mResult.trend.get(0).glucose(user.getPreferred_unit().equals("mmol/L")));
173179

174180
new Runnable() {
175181
@Override
@@ -189,7 +195,7 @@ private void openAddGlucoseActivity() {
189195
// Start AddGlucose Activity passing the reading value
190196
Intent intent = new Intent(getApplicationContext(), AddGlucoseActivity.class);
191197
Bundle bundle = new Bundle();
192-
String currentGlucose = mResult.trend.get(0).glucose(false);
198+
String currentGlucose = mResult.trend.get(0).glucose(user.getPreferred_unit().equals("mmol/L"));
193199
bundle.putString("reading", currentGlucose + "");
194200
intent.putExtras(bundle);
195201
startActivity(intent);

app/src/main/java/org/glucosio/android/activity/PreferencesActivity.java

Lines changed: 47 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
import org.glucosio.android.analytics.Analytics;
4848
import org.glucosio.android.db.DatabaseHandler;
4949
import org.glucosio.android.db.User;
50+
import org.glucosio.android.tools.GlucosioConverter;
5051
import org.glucosio.android.tools.InputFilterMinMax;
5152
import org.glucosio.android.tools.LocaleHelper;
5253

@@ -162,16 +163,19 @@ public void onCreate(final Bundle savedInstanceState) {
162163
agePref.setDefaultValue(user.getAge());
163164
countryPref.setValue(user.getCountry());
164165
genderPref.setValue(user.getGender());
165-
diabetesTypePref.setValue(user.getD_type() + "");
166+
diabetesTypePref.setValue(String.valueOf(user.getD_type()));
166167
unitPrefGlucose.setValue(getGlucoseUnitValue(user.getPreferred_unit()));
167168
unitPrefA1c.setValue(getA1CUnitValue(user.getPreferred_unit_a1c()));
168169
unitPrefWeight.setValue(getUnitWeight(user.getPreferred_unit_weight()));
169170
rangePref.setValue(user.getPreferred_range());
170171

171-
minRangePref.setDefaultValue(user.getCustom_range_min() + "");
172-
maxRangePref.setDefaultValue(user.getCustom_range_max() + "");
173-
minRangePref.setDefaultValue(user.getCustom_range_min() + "");
174-
maxRangePref.setDefaultValue(user.getCustom_range_max() + "");
172+
if (user.getPreferred_unit().equals("mg/dL")) {
173+
maxRangePref.setDefaultValue(user.getCustom_range_max());
174+
minRangePref.setDefaultValue(user.getCustom_range_min());
175+
} else {
176+
maxRangePref.setDefaultValue(GlucosioConverter.glucoseToMmolL(user.getCustom_range_max()));
177+
minRangePref.setDefaultValue(GlucosioConverter.glucoseToMmolL(user.getCustom_range_min()));
178+
}
175179

176180
if (!"custom".equals(rangePref.getValue())) {
177181
minRangePref.setEnabled(false);
@@ -277,24 +281,49 @@ public boolean onPreferenceChange(Preference preference, Object newValue) {
277281
return true;
278282
}
279283
});
284+
285+
minRangePref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
286+
@Override
287+
public boolean onPreferenceClick(Preference preference) {
288+
minEditText.setText("");
289+
return false;
290+
}
291+
});
292+
280293
minRangePref.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
281294
@Override
282295
public boolean onPreferenceChange(Preference preference, Object newValue) {
283296
if (TextUtils.isEmpty(newValue.toString().trim())) {
284297
return false;
285298
}
286-
updatedUser.setCustom_range_min(Integer.parseInt(newValue.toString()));
299+
if (user.getPreferred_unit().equals("mg/dL")) {
300+
updatedUser.setCustom_range_min(Integer.parseInt(newValue.toString()));
301+
} else {
302+
updatedUser.setCustom_range_min(GlucosioConverter.glucoseToMgDl(Double.parseDouble(newValue.toString())));
303+
}
287304
updateDB();
288305
return true;
289306
}
290307
});
308+
309+
maxRangePref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
310+
@Override
311+
public boolean onPreferenceClick(Preference preference) {
312+
maxEditText.setText("");
313+
return false;
314+
}
315+
});
291316
maxRangePref.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
292317
@Override
293318
public boolean onPreferenceChange(Preference preference, Object newValue) {
294319
if (TextUtils.isEmpty(newValue.toString().trim())) {
295320
return false;
296321
}
297-
updatedUser.setCustom_range_max(Integer.parseInt(newValue.toString()));
322+
if (user.getPreferred_unit().equals("mg/dL")) {
323+
updatedUser.setCustom_range_max(Integer.parseInt(newValue.toString()));
324+
} else {
325+
updatedUser.setCustom_range_max(GlucosioConverter.glucoseToMgDl(Double.parseDouble(newValue.toString())));
326+
}
298327
updateDB();
299328
return true;
300329
}
@@ -326,8 +355,6 @@ public boolean onPreferenceChange(Preference preference, Object newValue) {
326355
maxEditText = maxRangePref.getEditText();
327356

328357
ageEditText.setFilters(new InputFilter[]{new InputFilterMinMax(1, 110)});
329-
minEditText.setFilters(new InputFilter[]{new InputFilterMinMax(1, 1500)});
330-
maxEditText.setFilters(new InputFilter[]{new InputFilterMinMax(1, 1500)});
331358

332359
// Get countries list from locale
333360
ArrayList<String> countriesArray = new ArrayList<>();
@@ -421,20 +448,26 @@ public boolean onPreferenceChange(Preference preference, Object newValue) {
421448

422449
private void updateDB() {
423450
dB.updateUser(updatedUser);
424-
agePref.setSummary(user.getAge() + "");
425-
genderPref.setSummary(user.getGender() + "");
451+
agePref.setSummary(String.valueOf(user.getAge()));
452+
genderPref.setSummary(String.valueOf(user.getGender()));
426453

427454
diabetesTypePref.setSummary(getResources().getStringArray(R.array.helloactivity_diabetes_type)[user.getD_type() - 1]);
428455
unitPrefGlucose.setSummary(getGlucoseUnitValue(user.getPreferred_unit()));
429456
unitPrefA1c.setSummary(getA1CUnitValue(user.getPreferred_unit_a1c()));
430457
unitPrefWeight.setSummary(getUnitWeight(user.getPreferred_unit_weight()));
431458
countryPref.setSummary(user.getCountry());
432-
minRangePref.setSummary(user.getCustom_range_min() + "");
433-
maxRangePref.setSummary(user.getCustom_range_max() + "");
459+
460+
if (user.getPreferred_unit().equals("mg/dL")) {
461+
minRangePref.setSummary(String.valueOf(user.getCustom_range_min()));
462+
maxRangePref.setSummary(String.valueOf(user.getCustom_range_max()));
463+
} else {
464+
minRangePref.setSummary(String.valueOf(GlucosioConverter.glucoseToMmolL(user.getCustom_range_min())));
465+
maxRangePref.setSummary(String.valueOf(GlucosioConverter.glucoseToMmolL(user.getCustom_range_max())));
466+
}
434467

435468
countryPref.setValue(user.getCountry());
436469
genderPref.setValue(user.getGender());
437-
diabetesTypePref.setValue(user.getD_type() + "");
470+
diabetesTypePref.setValue(String.valueOf(user.getD_type()));
438471
unitPrefGlucose.setValue(user.getPreferred_unit());
439472
genderPref.setValue(user.getGender());
440473
unitPrefGlucose.setValue(user.getPreferred_unit());

app/src/main/java/org/glucosio/android/db/DatabaseHandler.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,13 +48,13 @@ public class DatabaseHandler {
4848

4949
public DatabaseHandler(Context context) {
5050
this.mContext = context;
51-
51+
Realm.init(context);
5252
this.realm = getNewRealmInstance();
5353
}
5454

5555
public Realm getNewRealmInstance() {
5656
if (mRealmConfig == null) {
57-
mRealmConfig = new RealmConfiguration.Builder(mContext)
57+
mRealmConfig = new RealmConfiguration.Builder()
5858
.schemaVersion(4)
5959
.migration(new Migration())
6060
.build();

0 commit comments

Comments
 (0)