官方架構例子,裡面有個dagger2的結合的例子
dagger2 通過註解來生成**,定義不同的角色,主要的註解有:@inject、@module 、@component 、@provides 、@scope 、@subcomponent 等。
簡單地說,通過物件型別傳遞 物件以來, 通過 module和 provides 提供物件 ,component中 若要注入當前物件 提供個 inject(mainactivity )方法
對於component類 除了inject 其它方法的作用:
1.可以將a模組中(provides註解)的物件給b模組(某個函式的 形參)使用,暴露方法共用,通過component作為中間橋梁
2.component 其方法的返回值 一般來自於 依賴的模組 提供的, make project後,當生成 daggercomponent之後可供外部呼叫。
3.若component中的返回型別物件a,從子模組 的provides 提供的註解 沒有找到型別一致的物件型別a時,可從a物件的建構函式查詢下 應該有個@inject 從外部注入的,裡面的形參 肯定可以在 子模組中找到。
4.不允許 @provides 返回的引數 與形參型別一樣,這樣會死迴圈,形參 是從 返回的引數那邊找來 注入的。
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 註解 初識
看部落格之前請先走出這個誤區 module和model,前者指建立依賴物件的物件,後者指的依賴的物件 也就是模型bean dagger2的幾個註解 module,提供建立依賴物件的方法。注意 不能有兩個 provides方法返回同乙個model,否則會報以下異常 2.component,鏈結modu...