Hilt更新Hilt版本后找不到ApplicationComponent
Posted guangdeshishe
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hilt更新Hilt版本后找不到ApplicationComponent相关的知识,希望对你有一定的参考价值。
问题:
在使用Hilt单例的时候,我们一般需要在Module上添加注解@InstallIn(ApplicationComponent::class)
,例如:
@InstallIn(ApplicationComponent::class)
@Module
class HttpModule
@Singleton
@Provides
fun provideHttpObject() = HttpObject()
但是当Hilt升级到2.31以及之后的版本之后,会发现已经不支持ApplicationComponent
了,找不到该类
原因:
ApplicationComponent
在 Dagger 2.30
版本中已经标记过时了
ApplicationComponent
在 Dagger 2.31
版本中就已经被移除了
解决办法:
使用SingletonComponent
代替ApplicationComponent
,修改后的代码如下:
@InstallIn(SingletonComponent::class)
@Module
class HttpModule
@Singleton
@Provides
fun provideHttpObject() = HttpObject()
以上是关于Hilt更新Hilt版本后找不到ApplicationComponent的主要内容,如果未能解决你的问题,请参考以下文章
找不到`activityViewModels()` Hilt Android
我收到“循环依赖”Android Dagger Hilt 错误