Dagger2 註解 初識

2021-09-20 16:28:55 字數 815 閱讀 4869

看部落格之前請先走出這個誤區:

module和model,前者指建立依賴物件的物件,後者指的依賴的物件(也就是模型bean)

dagger2的幾個註解:

@module,提供建立依賴物件的方法。

注意:不能有兩個@provides方法返回同乙個model,否則會報以下異常:

2.@component,鏈結module和inject的物件。編譯之後會自動生成對應的dagger***component

類。component如何得到module?

通過dagger***component.***module方法設定,如果沒有設定,預設呼叫module的無參構造方

法。module

如何得到model?

1)給依賴物件的本身的建構函式加@inject註解

2)通過加了@module的module類的加了@provide註解的方法

二者可以共存。

dagger2依賴巢狀:

1.乙個component依賴另外一上component,注意書寫的格式

容易發生的異常:

Dagger2學習筆記

dagger需要注入依賴的地方,需要 inject的註解,共有三種inject方式 identifies injectable constructors,methods,and fields.constructors首先被注入,然後是method和field,父類中的method和field會先於子...

Dagger2 學習筆記

google官方mvp dagger2架構詳解 從零開始搭建android框架系列 6 參考文章 dagger2 使用詳解 1 inject 和 provide 兩種依賴生成方式區別 a.inject 用於注入可例項化的類,provides 可用於注入所有類 b.inject 可用於修飾屬性 構造器...

Dagger2原始碼分析

2.3 memberinjector注入的過程 2.4 總體的注入流程回顧 上文dagger2入門教程以乙個例項介紹了dagger2的相關元件,概念和使用的方法。本文繼續以上文的例子為基礎,對其進行原始碼分析。如下圖所示,右邊是我們申明的component和module,左邊是dagger2生成的 ...