Android 如何在CoroutineWorker中获取工作请求Id

Android 如何在CoroutineWorker中获取工作请求Id,android,kotlin-coroutines,android-jetpack,android-workmanager,workmanagers,Android,Kotlin Coroutines,Android Jetpack,Android Workmanager,Workmanagers,我遇到一种情况,需要将WorkRequest.id发送给CoroutineWorker 我正在处理来自CoroutineWorker的房间DB,现在在DB中的一列中,我需要存储WorkRequest.id(UUID),以便当用户从recyclerview中的任务列表中取消任务时,我可以知道要取消的工作请求UUID 现在我的问题是,WorkRequest的id是在将数据分配给setInputData()之后创建的,因此在创建id之前,我如何将WorkRequest.id发送给我的工作人员 有没有办

我遇到一种情况,需要将
WorkRequest.id
发送给CoroutineWorker

我正在处理来自
CoroutineWorker
的房间DB,现在在DB中的一列中,我需要存储WorkRequest.id(UUID),以便当用户从recyclerview中的任务列表中取消任务时,我可以知道要取消的工作请求UUID

现在我的问题是,WorkRequest的id是在将数据分配给
setInputData()
之后创建的,因此在创建id之前,我如何将WorkRequest.id发送给我的工作人员

有没有办法在创建工作请求后向CoroutineWorker发送额外数据?

您可以调用
CoroutineWorker
获取创建它的id
WorkRequest
。它来自于
ListenableWorker
,因此您应该能够调用它。

我认为您可以在
CoroutineWorker
中调用
#getId()
来获取创建它的id
WorkRequest
。它来自
ListenableWorker
,因此您应该能够调用它。如果这是你要问的。如果我理解错了,请告诉我。@ADM是的#getId()是我所需要的。我只是试了一下,效果很好。非常感谢。