diff --git a/app/build.gradle b/app/build.gradle index de4a360..2b93e7d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,13 +1,13 @@ apply plugin: 'com.android.application' -apply plugin: 'kotlin-android-extensions' apply plugin: 'kotlin-android' +apply plugin: 'kotlin-android-extensions' android { compileSdkVersion 28 defaultConfig { applicationId "org.researchstack.backboneapp" - minSdkVersion 16 + minSdkVersion 19 targetSdkVersion 28 versionCode 1 versionName "1.0" @@ -19,12 +19,17 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.0.2' implementation 'org.researchstack:backbone:1.1.2' + implementation 'org.researchstack:backbone_interop:2.0.0-alpha01' testImplementation 'junit:junit:4.12' diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 0c72435..71e1c07 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -20,7 +20,7 @@ diff --git a/app/src/main/java/org/researchstack/backboneapp/BackboneApplication.java b/app/src/main/java/org/researchstack/backboneapp/BackboneApplication.java index 89803d8..d35a55f 100644 --- a/app/src/main/java/org/researchstack/backboneapp/BackboneApplication.java +++ b/app/src/main/java/org/researchstack/backboneapp/BackboneApplication.java @@ -2,6 +2,8 @@ import android.app.Application; +import com.jakewharton.threetenabp.AndroidThreeTen; + import org.researchstack.backbone.StorageAccess; import org.researchstack.backbone.storage.database.AppDatabase; import org.researchstack.backbone.storage.database.sqlite.DatabaseHelper; @@ -34,6 +36,9 @@ public void onCreate() null, DatabaseHelper.DEFAULT_VERSION); + // initialize timezone database for JSR-310 library + AndroidThreeTen.init(this); + StorageAccess.getInstance().init(pinCodeConfig, encryptionProvider, fileAccess, database); } } diff --git a/app/src/main/java/org/researchstack/backboneapp/MainActivity.java b/app/src/main/java/org/researchstack/backboneapp/MainActivity.java index 315cf95..bd6b75e 100644 --- a/app/src/main/java/org/researchstack/backboneapp/MainActivity.java +++ b/app/src/main/java/org/researchstack/backboneapp/MainActivity.java @@ -38,6 +38,7 @@ import org.researchstack.backbone.task.OrderedTask; import org.researchstack.backbone.task.Task; import org.researchstack.backbone.ui.PinCodeActivity; +import org.researchstack.backbone.interop.ViewBackboneInteropTaskActivity; import org.researchstack.backbone.ui.ViewTaskActivity; import org.researchstack.backbone.ui.step.layout.ConsentSignatureStepLayout; @@ -275,8 +276,8 @@ private void launchConsent() formStep, signatureStep); - // Launch using hte ViewTaskActivity and make sure to listen for the activity result - Intent intent = ViewTaskActivity.newIntent(this, consentTask); + // Launch using hte ViewBackboneInteropTaskActivity and make sure to listen for the activity result + Intent intent = ViewBackboneInteropTaskActivity.newIntent(this, consentTask); startActivityForResult(intent, REQUEST_CONSENT); } @@ -358,7 +359,7 @@ private void launchSurvey() booleanStep, multiStep); // Create an activity using the task and set a delegate. - Intent intent = ViewTaskActivity.newIntent(this, task); + Intent intent = ViewBackboneInteropTaskActivity.newIntent(this, task); startActivityForResult(intent, REQUEST_SURVEY); } @@ -424,7 +425,10 @@ private void printSurveyInfo(TextView surveyAnswer) for(String id : taskResult.getResults().keySet()) { StepResult stepResult = taskResult.getStepResult(id); - results += id + ": " + stepResult.getResult().toString() + "\n"; + // handle stepResults with null results + // we now add an empty stepResult to track step start/end timestamps for when a step + // does not add a result for itself + results += id + ": " + stepResult.getResult() + "\n"; } surveyAnswer.setText(results); diff --git a/build.gradle b/build.gradle index 28863a6..77c71d0 100644 --- a/build.gradle +++ b/build.gradle @@ -21,6 +21,7 @@ allprojects { jcenter() mavenCentral() maven { url "https://jitpack.io" } // for MPAndroidChart dependency, not on jcenter yet + maven { url "https://dl.bintray.com/researchstack/ResearchStack/" } // 2.0.0-alpha01 is not on jcenter yet } }