问题描述
我遵循 this 示例,但我的测试失败了,因为 workInfo.state
是 RUNNING
而不是 ENQUEUED
。有谁知道可能是什么问题?如果我应该提供更多代码/上下文,请告诉我。
解决方法
我不知道为什么,但是向请求添加约束解决了这个问题。不管我设置什么限制,它都成功了。也就是说,测试通过 NetworkType.METERED
和 NetworkType.UNMETERED
val constraints = Constraints.Builder().setRequiredNetworkType(NetworkType.METERED).build()
val request = PeriodicWorkRequestBuilder<EchoWorker>(15,MINUTES)
.setInputData(input)
.setConstraints(constraints) // added this line
.build()