【发布时间】:2023-03-21 06:03:01
【问题描述】:
我有一个 android 应用程序,我想对一个不是活动或片段的类执行依赖注入,因此 applicationContext 不存在。
@HiltAndroidApp
class App: Application {
@Inject
lateinit var analytics: Analytics
override fun onCreate() {
super.onCreate()
// other details
}
}
我的应用模块
@Module
@InstallIn(ApplicationComponent::class)
abstract class AppModule() {
companion object {
@Provide
@Singleton
fun provideSomeClass(): SomeClass = SomeClass()
}
}
如果我尝试在 Activity 中注入 SomeClass,它可以正常工作,但在非 Activity 类中却不能,它会失败并出现错误 Object is not initialized。
class Consumer {
@lateinit var SomeClass someClass;
}
谁能指出我做错了什么?
【问题讨论】:
-
你得到了没有构造函数的解决方案吗?
标签: android kotlin dagger-2 android-jetpack dagger-hilt