匕首-柄:我们需要用@AndroidEntryPoint标记所有活动吗?



所以我的问题是,当我开始与柄,我们是否需要标记所有的活动与@AndroidEntryPoint注释,或者我们可以只是创建一个BaseActivity并扩展到AppCompactActivity和标记单个类作为入口点?

这能行吗?如果有的话,这种风格的缺点是什么?

谢谢。

我不确定这是否是一个全面的答案,也许这更像是一个个人意见,但我想问的是目标是什么?

你正在尝试减少你需要写的代码量吗?那么我担心它将是相同的,如果不是更多,因为您将不得不去每个活动并添加继承部分。

对我来说,缺点是你现在使用继承来实现一些避免继承的东西。注释使您有机会注释任何活动,而不必说它是基本活动。这通常比继承更好,因为不是每个活动都是基活动,并且您可以将代码与实际执行的操作更多地解耦。我认为这更像是一个委托模式或者更像是一个装饰器。

也就是说,要回答你的问题,我不是百分之百的工作,但对我来说,它有使用继承的一些不应该通过继承建模的缺点。

不能标记"基类";作为一个AndroidEntryPoint,如果它是抽象的,那么这个想法无论如何都行不通。由于每个应用程序通常有一个活动(谷歌推荐),你不应该让你的生活比它更困难。只要用@AndroidEntryPoint注释一个活动,你就完成了。

如文档所示:

Hilt注入的类可以有其他基类也使用注入。这些类不需要@AndroidEntryPoint注释如果它们是抽象的。

最新更新