您好,欢迎来到花图问答。
搜索
您的当前位置:首页Dagger2单例是个啥玩应

Dagger2单例是个啥玩应

来源:花图问答

用@Singleton做实验,看编译后生成的代码:
猜测这句与单例有关:


图片.png

进ScopedProvider:

我擦,这不就是单例的写法吗!
可知,在ScopedProvider的对象中保持单例,如果想保证全局单例,需保证
ScopedProvider的对象全局唯一。在我们使用Dagger2注入时,ScopedProvider的对象是通过ScopedProvider.create()创建的,看一下ScopedProvide.create()函数:

图片.png

这个函数就是简单的new了一个对象,所以要保证全局单例,需要保证create()函数在全局只调用一次,即在Application的onCreate函数中调用ScopedProvider.create()。

Copyright © 2019- huatuowenda.com 版权所有 湘ICP备2023022495号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务