假设已经在这里提到过,开发人员需要保留组件实例以实现自己的作用域逻辑(因为对于给定组件,作用域方法将返回相同的实例)。
如何在活动生命周期中保持此组件引用的清晰方式是什么?
例如:您正在实现MVP模式,因此您需要一个Presenter来管理Activity。该Presenter可以执行网络操作以下载项目。当设备旋转时,Activity被销毁并重新创建,但是您希望继续进行网络操作并恢复旋转前的Presenter。
通过为提供Presenter的组件提供自定义PerActivity作用域,对组件进行作用域限定是解决方案,因此您必须通过此旋转保留组件实例,以便注入与Activity首次启动时相同的Presenter实例。
我们应该如何处理这个问题?我想到了一种组件缓存的方式(像HashMap一样?),可以由位于Application类中的应用程序组件提供。
如何在活动生命周期中保持此组件引用的清晰方式是什么?
例如:您正在实现MVP模式,因此您需要一个Presenter来管理Activity。该Presenter可以执行网络操作以下载项目。当设备旋转时,Activity被销毁并重新创建,但是您希望继续进行网络操作并恢复旋转前的Presenter。
通过为提供Presenter的组件提供自定义PerActivity作用域,对组件进行作用域限定是解决方案,因此您必须通过此旋转保留组件实例,以便注入与Activity首次启动时相同的Presenter实例。
我们应该如何处理这个问题?我想到了一种组件缓存的方式(像HashMap一样?),可以由位于Application类中的应用程序组件提供。