我开始将 Dagger 应用程序迁移到 Hilt,首先我将 AppComponent 转换为 Hilt 自动生成的 ApplicationComponent。因此,我@InstallIn(ApplicationComponent::class)
为与该组件相关的每个模块添加了注释。
现在我收到以下错误:
错误:[Hilt] 所有模块必须是静态的并使用静态提供方法或具有可见的无参数构造函数。
它指向这个模块:
@InstallIn(ApplicationComponent::class)
@Module
class AccountModule(private val versionName: String) {
@Provides
@Singleton
fun provideComparableVersion(): ComparableVersion {
return ComparableVersion(versionName)
}
}
以前在 Dagger 中,可以在构造函数中传递参数。看起来 Hilt 不允许这样做。
如何将参数传递给 Hilt 模块?