匕首可以使android活动创建速度变慢吗?

Posted

技术标签:

【中文标题】匕首可以使android活动创建速度变慢吗?【英文标题】:Can dagger make android activity creation slower? 【发布时间】:2021-12-04 13:38:01 【问题描述】:

我在活动 A 中有属性数据管理器,我正在通过 dagger 组件在活动 A onCreate() 中实例化它的值实例。

override fun onCreate(savedInstanceState: Bundle?) 
   datatManager = coreComponent().provideDataManager() 

我的问题(可能是一个愚蠢的问题)是:1] 当我在 onCreate() 上调用它时,dagger 是否会生成代码并实例化对象?还是 Dagger 是编译时,它已经在幕后准备好了 Data Manager 依赖的所有类?并在我需要的时候给我参考? 2] 这是否会使创建/启动活动变慢?

【问题讨论】:

【参考方案1】:

Dagger 在编译期间生成代码,因此代码本身已经“就绪”,但这并不意味着类实例已经就绪。默认情况下,Dagger 会在您每次访问它们时创建实例,除非您使用诸如 @Singleton 之类的作用域机制。

如果注入的实例很重(即在其构造函数中执行很多操作),那么是的,它会对您的活动创建时间产生负面影响。

【讨论】:

谢谢,很有帮助。

以上是关于匕首可以使android活动创建速度变慢吗?的主要内容,如果未能解决你的问题,请参考以下文章

PHP 与 Node.js - 在 Node.js 中使用 Jade 的 HTML 渲染速度会变慢吗?

手机发热充电会变慢吗?

XSLT document() :多次调用它会变慢吗?

同时用无线和vpn网速会变慢吗

高效的 DOM 选择技术 - 按属性选择会变慢吗?

thinkphp注解路由会变慢吗