何时在 android 组件生命周期中调用 Dagger 2 注入

When to call Dagger 2 inject in android component lifecycle

which methods 个 android 个组件的生命周期中,我应该 call dagger 2 inject?例如,我有:

在C中我使用父组件(B组件),在B中我也使用父组件(A组件)。所以这些组件应该按上述顺序创建。

我目前的解决方案是:

但这是不正确的,因为每次片段从返回堆栈弹出时都会调用 onViewCreated。

当我在打开 "don't keep activities" 模式的片段的 onCreate 中调用 inject 时,片段嵌套片段 onCreate 方法在 activity 嵌套片段 onCreate 之前调用,因此它也不起作用。

正确答案是在 onCreate 方法中调用 dagger 2 inject,但是 调用 super.onCreate(bundle); 之前,因为所有嵌套片段都是在该调用中创建的.在 activity 和 activity 嵌套片段中都是必需的,对于片段嵌套片段无关紧要。