From fe912b9d7953c85984dc53d19d2664d3ce0d2a51 Mon Sep 17 00:00:00 2001 From: Aditya Cahyo Date: Fri, 25 Nov 2022 08:05:58 +0700 Subject: [PATCH] init WorkManager --- app/build.gradle | 3 +++ .../java/com/example/isowatch/MonitoringActivity.kt | 8 ++++++++ .../java/com/example/isowatch/MonitoringWorker.kt | 12 ++++++++++++ build.gradle | 1 + 4 files changed, 24 insertions(+) create mode 100644 app/src/main/java/com/example/isowatch/MonitoringWorker.kt diff --git a/app/build.gradle b/app/build.gradle index 925f764..524e8c6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -53,4 +53,7 @@ dependencies { implementation "com.squareup.retrofit2:converter-moshi:$moshi_version" // OkHttp implementation "com.squareup.okhttp3:okhttp:$okhttp_version" + + // WorkManager + implementation "androidx.work:work-runtime-ktx:$work_version" } \ No newline at end of file diff --git a/app/src/main/java/com/example/isowatch/MonitoringActivity.kt b/app/src/main/java/com/example/isowatch/MonitoringActivity.kt index 044fbb1..f6c2526 100644 --- a/app/src/main/java/com/example/isowatch/MonitoringActivity.kt +++ b/app/src/main/java/com/example/isowatch/MonitoringActivity.kt @@ -14,6 +14,7 @@ import android.widget.Button import android.widget.TextView import android.widget.Toast import androidx.core.app.ActivityCompat +import androidx.work.WorkManager import com.example.isowatch.databinding.ActivityMonitoringBinding import com.google.android.material.progressindicator.CircularProgressIndicator import com.samsung.android.service.health.tracking.HealthTrackerException @@ -27,6 +28,7 @@ class MonitoringActivity: Activity() { private val MEASUREMENT_DURATION = 30000 private val MEASUREMENT_TICK = 250 + private lateinit var workManager: WorkManager private var isMeasurementRunning = AtomicBoolean(false) lateinit var uiUpdateThread: Thread private lateinit var connectionManager: ConnectionManager @@ -211,6 +213,10 @@ class MonitoringActivity: Activity() { } } +// internal fun AutoMeasure() { +// workManager.enqueue(PeriodicWorkRequestBuilder(10)) +// } + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -219,6 +225,8 @@ class MonitoringActivity: Activity() { val binding = ActivityMonitoringBinding.inflate(layoutInflater) setContentView(binding.root) + WorkManager.getInstance(application) + txtHeartRate = binding.txtHeartRate txtStatus = binding.txtStatus txtSpo2 = binding.txtSpO2 diff --git a/app/src/main/java/com/example/isowatch/MonitoringWorker.kt b/app/src/main/java/com/example/isowatch/MonitoringWorker.kt new file mode 100644 index 0000000..1bbffbe --- /dev/null +++ b/app/src/main/java/com/example/isowatch/MonitoringWorker.kt @@ -0,0 +1,12 @@ +package com.example.isowatch + +import android.content.Context +import androidx.work.Worker +import androidx.work.WorkerParameters + +class MonitoringWorker(context: Context, params: WorkerParameters): Worker(context, params) { + override fun doWork(): Result { + return Result.success() + } + +} \ No newline at end of file diff --git a/build.gradle b/build.gradle index 67511b7..c480831 100644 --- a/build.gradle +++ b/build.gradle @@ -4,6 +4,7 @@ buildscript { ext.retrofit_version = '2.9.0' ext.moshi_version = '2.9.0' ext.okhttp_version = '4.9.0' + ext.work_version = "2.7.1" } }