我正在使用工作管理器——CoroutineWorker。这是我的例子:
@AndroidEntryPoint
class MyWorker(
appContext: Context,
params: WorkerParameters,
) : CoroutineWorker(appContext, params) {
@Inject
lateinit var repository: DataRepository
override suspend fun doWork(): Result {
val id = inputData.getString(ID)
val name = inputData.getString(NAME)
if (!id.isNullOrEmpty()) {
return try {
withContext(Dispatchers.IO) {
repository.updateData(id, name)
Result.success()
}
} catch (exception: Exception) {
Result.failure()
}
}
return Result.failure()
}
companion object {
const val ID = "MyWorker.ID"
const val NAME = "MyWorker.NAME"
}
}
是否需要在我的工作经理的舱单中申报?我找不到这个信息。
如果我使用刀柄,是否需要为我的工作管理器添加注解@AndroidEntryPoint?