问题描述
当给定的屏幕处于活动状态时,我有一个Flow<ScreenState>
收集。
屏幕变为非活动状态后,收集停止。
当屏幕再次变为活动状态(如何继续而不是重新启动)时,如何恢复收集? 例如。如果我的流量是0-100的计数器;在我当前的情况下,它将在每次屏幕变为活动状态时从0重新开始,我希望它从暂停之前的最后一个发出的值继续。
fun start() {
job?.cancel()
job = task?.let { task ->
manager.execute(
task,dispatcher
)
}
}
fun stop() {
job?.cancel()
job = null
}
//Manager.execute
fun <Message> execute(
task: Task<Message>,dispatcher: Dispatcher<Message>
): Job {
return scope.launch {
task.toFlow().collectLatest { message ->
dispatcher(message)
}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)