无需 LiveData 即可观察 Worker 的状态

问题描述 投票:0回答:1

因此,我正在使用 Workmanager 从 FTP 服务器检索数据。我必须根据工作人员的状态显示一种类型或信息或另一种类型。

我在视图模型上使用 getWorkInfoByIdLiveData 并观察活动中工作人员的状态。但是,由于 Observer 几乎已被弃用,我正在尝试使用 Flow 来代替。

我遇到的问题是,我不知道为什么,我无法在 livedata 上使用 asStateFlow() 。 enter image description here

有谁知道不使用LiveData和Observer来观察worker状态的方法吗?

谢谢你uu

android kotlin android-livedata kotlin-flow kotlin-stateflow
1个回答
0
投票

将 LiveData-ktx 依赖项添加到您的 build.gradle 中:

androidx.lifecycle:lifecycle-livedata-ktx:2.6.1

然后就可以将 LiveData 转换为 Kotlin 协程的 Flow 了。

val operation = WorkManager.getInstance(context).enqueue(myRequest)
operation.state.asFlow()
© www.soinside.com 2019 - 2024. All rights reserved.