voben
02/11/2020, 9:28 PMoverride suspend fun doWork(): Result {
myFlow.onEach { }.launchIn(//What scope do we use here?)
}
Nicholas Doglio
02/11/2020, 9:41 PMCoroutineWorker
handles this for you if you do something like the following:
override suspend fun doWork(): Result = myFlow.collect { }
CoroutineWorker
launches doWork
in it's own scope but doesn't make that scope publically visible, so if you just return your flow I'm pretty sure CoroutineWorker
should just handle it for you.
Check out the code here: https://cs.android.com/androidx/platform/frameworks/support/+/androidx-master-dev:work/workmanager-ktx/src/main/java/androidx/work/CoroutineWorker.kt;bpv=0;l=63satyan
02/11/2020, 9:54 PMstreetsofboston
02/12/2020, 2:27 AM