diff --git a/CHANGELOG.md b/CHANGELOG.md index bd79101..931b2d4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,6 @@ OpenSeizureDetector Android App - Change Log ============================================ + V4.2.11 - Added setting to change the delay before SMS alert is sent (Issue #202) V4.2.10 - fixed (infrequent) crash when opening data sharing page (#195), and crash if log manager fails to start (#196) V4.2.9 - fixed crash when using Polish translation. V4.2.8 - diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index f611cbf..92c72e8 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,8 +1,8 @@ + android:versionCode="145" + android:versionName="4.2.11"> diff --git a/app/src/main/java/uk/org/openseizuredetector/SdServer.java b/app/src/main/java/uk/org/openseizuredetector/SdServer.java index cba11af..d86a58e 100644 --- a/app/src/main/java/uk/org/openseizuredetector/SdServer.java +++ b/app/src/main/java/uk/org/openseizuredetector/SdServer.java @@ -128,7 +128,8 @@ public class SdServer extends Service implements SdDataReceiver { private String[] mSMSNumbers; private String mSMSMsgStr = "default SMS Message"; public Time mSMSTime = null; // last time we sent an SMS Alarm (limited to one per minute) - public SmsTimer mSmsTimer = null; // Timer to wait 10 seconds before sending an alert to give the user chance to cancel it. + public SmsTimer mSmsTimer = null; // Timer to wait for specified time before sending an alert to give the user chance to cancel it. + public int mSmsTimerSecs = 10; // Time delay in seconds before sending SMS alert. private AlertDialog.Builder mSMSAlertDialog; // Dialog shown during countdown to sending SMS. // Data Logging Parameters @@ -993,7 +994,7 @@ public class SdServer extends Service implements SdDataReceiver { runOnUiThread(new Runnable() { public void run() { mSmsTimer = - new SmsTimer(10 * 1000, 1000); + new SmsTimer(mSmsTimerSecs * 1000, 1000); mSmsTimer.start(); } }); @@ -1265,6 +1266,11 @@ public class SdServer extends Service implements SdDataReceiver { mUtil.writeToSysLogFile("updatePrefs() - SMSNumberStr = " + SMSNumberStr); Log.v(TAG, "updatePrefs() - mSMSNumbers = " + mSMSNumbers); mUtil.writeToSysLogFile("updatePrefs() - mSMSNumbers = " + mSMSNumbers); + + String smsDelayPeriodStr = SP.getString("SMSDelayPeriod","10"); + mSmsTimerSecs = Integer.parseInt(smsDelayPeriodStr); + Log.v(TAG,"updatePrefs() - mSmsTimerSecs = "+mSmsTimerSecs); + mLogAlarms = SP.getBoolean("LogAlarms", true); Log.v(TAG, "updatePrefs() - mLogAlarms = " + mLogAlarms); mUtil.writeToSysLogFile("updatePrefs() - mLogAlarms = " + mLogAlarms); @@ -1314,7 +1320,7 @@ public class SdServer extends Service implements SdDataReceiver { mUseNewUi = SP.getBoolean("UseNewUi", false); } catch (Exception ex) { - Log.v(TAG, "updatePrefs() - Problem parsing preferences!"); + Log.v(TAG, "updatePrefs() - Problem parsing preferences!" + ex.toString()); mUtil.writeToSysLogFile("SdServer.updatePrefs() - Error " + ex.toString()); mUtil.showToast(getString(R.string.problem_parsing_preferences)); } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d9611f5..e67d5c6 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -578,4 +578,6 @@ Restart Server ERROR: failed to create local event ERROR: Failed to start Log Manager + SMS Delay (sec) + The number of seconds to delay between an alarm initiating and an SMS message being sent (default=10) diff --git a/app/src/main/res/xml/alarm_prefs.xml b/app/src/main/res/xml/alarm_prefs.xml index bcae6de..b5fa83f 100644 --- a/app/src/main/res/xml/alarm_prefs.xml +++ b/app/src/main/res/xml/alarm_prefs.xml @@ -50,6 +50,12 @@ android:key="SMSAlarm" android:summary="@string/enable_sms_alarm_summary" android:title="@string/enable_sms_alarm_title" /> +