【发布时间】:2022-12-15 05:50:21
【问题描述】:
我有一个下载文件的流程。该流发出下载进度。我想在手机通知中心显示进度,但每秒只更新一次值以防止设备滞后。
我的流程:
return callbackFlow {
someJavaCallback { progress ->
trySend(progress)
}
close()
}
我的 CoroutineWorker,它显示通知并下载文件:
myFlow.collect { // update notification }
Result.Success()
我的问题是,如何“限制”收集,例如收集 1%,但 1 秒后它收集 5% 并忽略这两点之间的所有值
【问题讨论】:
标签: kotlin coroutine kotlin-flow