使用 Hilt 注入 WorkManager 但出现错误 "Dagger does not support providing @AssistedInject types."

Inject WorkManager with Hilt but getting error "Dagger does not support providing @AssistedInject types."

While injecting WorkManager using HILT, compiler throwing below error 

"Dagger does not support providing @AssistedInject types"

已按照下面提到的所有步骤进行操作 link

https://developer.android.com/training/dependency-injection/hilt-jetpack

PFB 编码片段和 build.gradle HILT 和 Worker 的依赖项

  1. WorkerClass

  2. 依赖关系

为了解决这个问题,已经看到并实施了各种 S.O。 post 但运气不好。

Whereas, if I didn't use both @HiltWorker and @AssistedInject and removed other dependencies from object constructor code compiles and run successfully but field injection for required dependencies won't work.

因此不确定是它的库问题还是某些实现问题。

并提前感谢您的支持和回答!

编辑: (添加 WorkerModule.kt 代码)

@Module
@InstallIn(SingletonComponent::class)
object WorkerModule {

    @Singleton
    @Provides
    fun provideWorkerModule(context: Context,
        workerParameters: WorkerParameters
//        appNetworkService: AppNetworkService,
//        appDatabaseService: AppDatabaseService
    ): PaymentTrackerWorker {
//        return PaymentTrackerWorker(context, workerParameters,appNetworkService,appDatabaseService)
        return PaymentTrackerWorker(context, workerParameters)
    }
}

错误指出您正在尝试 @Provides 具有 @AssistedInject 构造函数的 class。这是有道理的:毕竟,在单例上下文中无法获得 WorkerParameters 的正确实例。

幸运的是,WorkerModule 也完全没有必要,因为 HiltWorkerFactory 已经知道如何创建任何 @HiltWorker-注释的 class。只需删除模块,并按照教程确保 HiltWorkerFactory 安装在 WorkManager.