File tree Expand file tree Collapse file tree 2 files changed +10
-0
lines changed
presentation/src/main/java/com/stop/ui Expand file tree Collapse file tree 2 files changed +10
-0
lines changed Original file line number Diff line number Diff line change @@ -21,6 +21,7 @@ import kotlinx.coroutines.flow.MutableStateFlow
21
21
import kotlinx.coroutines.flow.StateFlow
22
22
import kotlinx.coroutines.flow.collectLatest
23
23
import kotlinx.coroutines.launch
24
+ import java.util.UUID
24
25
import javax.inject.Inject
25
26
26
27
@HiltViewModel
@@ -41,6 +42,8 @@ class AlarmSettingViewModel @Inject constructor(
41
42
private val _isAlarmItemNotNull = MutableStateFlow (false )
42
43
val isAlarmItemNotNull: StateFlow <Boolean > = _isAlarmItemNotNull
43
44
45
+ private lateinit var workerId : UUID
46
+
44
47
fun saveAlarm (alarmUseCaseItem : AlarmUseCaseItem ) {
45
48
viewModelScope.launch(Dispatchers .IO ) {
46
49
saveAlarmUseCase.saveAlarm(alarmUseCaseItem.copy(alarmTime = alarmTime.value ? : 0 , alarmMethod = alarmMethod))
@@ -80,8 +83,13 @@ class AlarmSettingViewModel @Inject constructor(
80
83
val workRequest = OneTimeWorkRequestBuilder <LastTimeCheckWorker >()
81
84
.setInputData(workData)
82
85
.build()
86
+ workerId = workRequest.id
83
87
84
88
workManager.enqueue(workRequest)
85
89
}
86
90
91
+ fun removeAlarmWorker (){
92
+ workManager.cancelWorkById(workerId)
93
+ }
94
+
87
95
}
Original file line number Diff line number Diff line change @@ -54,13 +54,15 @@ class AlarmStartFragment : Fragment() {
54
54
buttonAlarmTurnOff.setOnClickListener {
55
55
turnOffSoundService()
56
56
alarmSettingViewModel.deleteAlarm()
57
+ alarmSettingViewModel.removeAlarmWorker()
57
58
requireActivity().finish()
58
59
}
59
60
60
61
textViewMissionStart.setOnClickListener {
61
62
turnOffSoundService()
62
63
root.findNavController().navigate(R .id.action_alarmStartFragment_to_missionFragment)
63
64
alarmSettingViewModel.deleteAlarm()
65
+ alarmSettingViewModel.removeAlarmWorker()
64
66
}
65
67
}
66
68
}
You can’t perform that action at this time.
0 commit comments