0

如果我将 Dagger 2 与作用域子模块一起使用,它可以更容易地不在活动之间传递 parcelables,但是如果应用程序经历进程死亡并且我们的对象图被破坏,你如何处理从中恢复?

我唯一能想到的就是加倍并使用您的作用域依赖项以及在 Bundle 中放置足够的数据来重新创建图表。这样,如果您发现应该存在的内容为空,这意味着应用程序已被终止,请使用捆绑包中的状态来尝试重建图形。

还有比这更好的方法吗?在我看来,这部分否定了使用 Dagger。

4

1 回答 1

0

使用活动甚至碎片的最佳方式是使用捆绑包,以便在破坏时轻松恢复。我从不使用 Dagger 作为替代品,因为它不是开发 Dagger 的目的。

是的,Dagger 适用于 DI(依赖注入),但不适用于阻止 android 了解活动数据。匕首主要用于提供您将通过构造函数注入的数据,您在活动中执行此操作。

即使在片段中,最佳实践也是使用一种newInstance()方法并通过此方法参数注入您的依赖项,然后将它们保存在片段包中!

于 2017-04-30T04:35:11.960 回答