【发布时间】:2015-12-29 16:37:15
【问题描述】:
我一直在研究 Dagger 2 中的自定义作用域(this 和 this 是我试图将代码作为基础的),但有一件事我似乎仍然无法理解,我看到您可以创建具有自定义范围的组件,然后该组件包含的模块的所有提供形式将与组件的范围相同(组件中的单例)或无范围的,每次都会返回新实例你得到一个。
但是,我仍然不明白的是,如果你有一个用户范围,然后你有一些模块绑定到该范围,假设你的网络组件被绑定到它,所以网络调用使用当前用户信息,如果你在Activity生命周期中注销用户(或登录用户),它会改变你当前标记为@Inject的对象引用吗?或者当您在活动 onCreate 方法中调用 .inject(this) 时获得的任何实例? 或者您应该再调用一次 inject 以便再次映射引用?
非常感谢您对此事的任何帮助:)
【问题讨论】:
标签: android dependency-injection dagger-2 custom-scope