diff --git a/QA/QA_checksheet_pre-release_blank.xlsx b/QA/QA_checksheet_pre-release_blank.xlsx
new file mode 100644
index 0000000..5d5e203
Binary files /dev/null and b/QA/QA_checksheet_pre-release_blank.xlsx differ
diff --git a/app/release/app-release-4.0.4.apk b/app/release/app-release-4.0.4.apk
new file mode 100644
index 0000000..3f7bc5c
Binary files /dev/null and b/app/release/app-release-4.0.4.apk differ
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index f988104..5d70e36 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -3,7 +3,7 @@
xmlns:tools="http://schemas.android.com/tools"
package="uk.org.openseizuredetector"
android:versionCode="100"
- android:versionName="4.0.4b">
+ android:versionName="4.0.4">
diff --git a/app/src/main/java/uk/org/openseizuredetector/SdData.java b/app/src/main/java/uk/org/openseizuredetector/SdData.java
index 3cef16b..1fc1e4c 100644
--- a/app/src/main/java/uk/org/openseizuredetector/SdData.java
+++ b/app/src/main/java/uk/org/openseizuredetector/SdData.java
@@ -72,6 +72,7 @@ public class SdData implements Parcelable {
public double mO2SatThreshMin = 80.0;
/* Watch App Settings */
+ public String dataSourceName = "";
public String watchPartNo = "";
public String watchFwVersion = "";
public String watchSdVersion = "";
@@ -242,6 +243,7 @@ public class SdData implements Parcelable {
jsonObj.put("o2SatAlarmActive", mO2SatAlarmActive);
jsonObj.put("o2SatAlarmStanding", mO2SatAlarmStanding);
jsonObj.put("o2SatThreshMin", mO2SatThreshMin);
+ jsonObj.put("dataSourceName", dataSourceName);
jsonObj.put("watchPartNo", watchPartNo);
jsonObj.put("watchSdName", watchSdName);
jsonObj.put("watchFwVersion", watchFwVersion);
diff --git a/app/src/main/java/uk/org/openseizuredetector/SdServer.java b/app/src/main/java/uk/org/openseizuredetector/SdServer.java
index 0c92e7d..1165f36 100644
--- a/app/src/main/java/uk/org/openseizuredetector/SdServer.java
+++ b/app/src/main/java/uk/org/openseizuredetector/SdServer.java
@@ -228,6 +228,7 @@ public class SdServer extends Service implements SdDataReceiver {
updatePrefs();
Log.v(TAG, "onStartCommand: Datasource =" + mSdDataSourceName);
+ mSdData.dataSourceName = mSdDataSourceName;
switch (mSdDataSourceName) {
case "Pebble":
Log.v(TAG, "Selecting Pebble DataSource");
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index e35c107..2fd6d0d 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -3,11 +3,7 @@
OpenSeizureDetector
"\n
- \nV4.0.4 - Added watch info to events data
- \nV4.0.3 - Changed remote database to be compatible with either OSD webAPI or future Firebase database.
- - Performance improvement by having separate events and datapoints tables in local database
- \nV4.0.1, 4.0.2, - fixed repoted crashes
- \nV4.0.0
+ \nV4.0.4
- Introduced the <b>Data Sharing</b> feature to allow users to share their seizure and false alarm data
with researchers to help improve the system.<br/>
- Fixed <b>SMS Location Alerts</b> on Android V10+ (new permissions screens)<br/>
diff --git a/releases/app-release-4.0.4.apk b/releases/app-release-4.0.4.apk
new file mode 100644
index 0000000..3f7bc5c
Binary files /dev/null and b/releases/app-release-4.0.4.apk differ
diff --git a/releases/app-release-4.0.4b.apk b/releases/old_versions/app-release-4.0.4b.apk
similarity index 100%
rename from releases/app-release-4.0.4b.apk
rename to releases/old_versions/app-release-4.0.4b.apk