【发布时间】:2020-08-14 23:10:50
【问题描述】:
我正在做一个 Hilt 的相对简单的实现。我已经设置好了,但似乎无法解决这个错误:
[Dagger/MissingBinding] @dagger.hilt.android.qualifiers.ApplicationContext android.content.Context 不能在没有@Provides-annotated 方法的情况下提供。
@dagger.hilt.android.qualifiers.ApplicationContext android.content.Context is injected at
com.greendotcorp.core.managers.featurecontrol.app.FeatureControlManager(context, …)
com.greendotcorp.core.managers.featurecontrol.app.FeatureControlManager is injected at
com.greendotcorp.core.features.dashboard.GridDashboardFragment.featureControlManager
com.greendotcorp.core.features.dashboard.GridDashboardFragment is injected at
com.greendotcorp.core.utils_theme.ViewModelDependencyInjector.inject
这是我的代码:
@Singleton
@Component(modules = [ViewModelInjectorModule::class])
interface ViewModelDependencyInjector {
fun inject(fragment: GridDashboardFragment)
}
@InstallIn(FragmentComponent::class)
@Module
object DashboardModule {
@Provides
@Singleton
fun provideFeatureComponentManager(@ApplicationContext context: Context) : FeatureControlManager {
return FeatureControlManager.getInstance(context)
}
@AndroidEntryPoint
class GridDashboardFragment : BaseDetailFragment() {
@Inject lateinit var featureControlManager: FeatureControlManager
}
我是 Hilt 的新手 - 有什么想法吗?
【问题讨论】:
-
Kristy,你找到解决办法了吗,这个问题快把我逼疯了
-
这里也一样 - 如果您找到任何解决方案,如果您能分享您的解决方案,那就太好了
标签: android dagger-hilt