【发布时间】:2020-04-29 04:52:30
【问题描述】:
我是 android 匕首的新手,我需要直接从组件中获取对象,但我需要知道这是正确的做法。
例子
我需要使用匕首注入的类
@Singleton
class Testing @Inject constructor(){
}
@Singleton
@Component(...)
interface AppComponent {
...
@Component.Builder
interface Builder {
@BindsInstance
fun application(application: MyApplication): Builder
fun build(): AppComponent
}
fun getTest(): Testing
fun inject(application: MyApplication)
}
class Myapplication : Application(){
lateinit var appComponent : AppComponent
override fun onCreate() {
super.onCreate()
initializeDagger()
}
private void initializeDagger() {
appComponent = DaggerAppComponent.builder()
.application(this)
.build();
appComponent.inject(this);
}
}
用于获取注入的类,即Testing
class Tester {
fun getTesting() : Testing{
return applicationContext.appComponent.getTest()
}
}
我需要知道这是正确的做法还是有任何其他替代解决方案可用?
谁能帮我解决这个问题?
【问题讨论】:
标签: java android kotlin dagger-2