Dagger单身预装

问题描述 投票:-1回答:1

我想执行这样的功能:

  1. 用户打开第一个活动,并在引擎盖下Dagger开始初始化单例,我将注入第二个活动
  2. 导航到第二个活动,在这里我将这个单例注入活动

我试图把这个类注入第一个活动,但这似乎不是一个好的解决方案

所有这一切都是必需的,因为我想在这个单例中执行一些本地数据库请求,如果在活动已经启动时它还没有准备好,那么对用户来说可能有点混乱

java android kotlin singleton dagger
1个回答
0
投票

如果你希望在“第二个”Activity启动之前依赖项可用(==“preloaded”),那么你必须在之前的其他地方使用@Inject这个依赖项。它可以是“第一”Activity或例如Application类。

一般来说,这不是最好的方法。如果你没有预加载依赖项,而是在实际需要时加载它们会更好。加载一个依赖项可能会导致依赖项创建的整个螺旋(因此依赖项注入背后的整个想法)。

© www.soinside.com 2019 - 2024. All rights reserved.