【发布时间】:2016-12-17 10:38:45
【问题描述】:
我目前正在尝试找出 Dagger 2。我正在尝试设置 4 个范围:应用程序、用户、活动、片段。 User 和 Activity 组件是 App 的子组件。 Fragment 是一个以 Activity 为依赖的组件。
假设我的 UserSettingsActivity 需要一个 Toolbar(由 ActivityModule 提供)和一个 UserProfile(由 UserModule 提供)。在我从数据库中请求之前,我不会得到 UserProfile,而 Toolbar 可以立即提供。所以注入的顺序是先进入ActivityComponent,然后进入UserComponent。我有 2 个@Inject 字段,一个用于工具栏,一个用于活动中的 UserProfile。我希望 dagger 会知道依赖项来自不同的模块,但它似乎抱怨注入 ActivityComponent 时无法提供 UserProfile。明明是ActivityModule不能提供的,为什么UserProfile是UserModule提供的不建立连接呢?
【问题讨论】:
标签: android dependency-injection dagger-2