对不起,我是在android中使用匕首的新手,并且正在练习基础知识。这是我的代码的github link。我只是在使用模块并提供项目。它可以正常工作,但我有些困惑。
首先让我在这里放置一些代码以节省时间,而不是查看github中的整个代码。
ApiServicesComponent:
@Component(modules = {ModuleApiService.class})
public interface ApiServicesComponent {
APIInterface getApiService();
}
MainActivity onCreate():
ApiServicesComponent mDaggerApiServiceComponent = DaggerApiServicesComponent.builder().build();
APIInterface retroInterface = mDaggerApiServiceComponent.getApiService() ;
现在回到我的困惑中。我正在调用dagger生成的组件类- DaggerApiServicesComponent ,并且没有向其添加任何模块,并且仍然可以正常工作。但是大多数代码在调用build之前都会添加一些模块和组件。例子-
DaggerMainActivityComponent.builder()
.mainActivityContextModule(new MainActivityContextModule(this))
.applicationComponent(applicationComponent)
.build();
何时以及如何将这些模块或组件添加到匕首生成的组件类中?为什么我们要这么做?