Android依賴注入 Hilt

2021-10-12 21:59:09 字數 1566 閱讀 2244

目錄

1、基本說明

1.1、依賴

1.2、依賴注入(di)

1.3、依賴注入方式

1.4、依賴注入優勢

2、使用hilt實現依賴注入

2.1、新增依賴項

2.2、hilt & dagger註解介紹

2.3、hilt註解特別說明

2.4、hilt官方示例

根據需求方和提供方的作用關係分為類依賴(直接依賴或強依賴)、方法依賴(間接依賴)、成員依賴(待定型別依賴)

圖1.直接依賴圖2.間接依賴

將依賴關係傳遞給其他物件或框架,依賴注入方式分別是建構函式注入(constructor injection)字段注入(setter injection)、介面注入(inte***ce injection),在android中前兩種比較常用。

// constructor

client(service service)

// setter method

public void setservice(service service)

// service setter inte***ce.

public inte***ce servicesetter

// client class

public class client implements servicesetter

}

hilt在依賴庫dagger的基礎上構建而成,是android中實現依賴注入的jetpack庫。

首先,將hilt-android-gradle-plugin外掛程式新增到專案的根級build.gradle檔案中:

buildscript 

}

...

android

}dependencies

注意:同時使用 hilt 和資料繫結的專案需要 android studio 4.0 或更高版本。

圖3.hilt & dragger annotations

git clone -b solution

spring 依賴注入 Spring依賴注入

依賴注入 dependency injection,簡稱di 與控制反轉 ioc 的含義相同控制反 在使用spring框架之後,物件的例項不再由呼叫者來建立,而是由spring容器來建立,spring容器會負責控制程式之間的關係,而不是由呼叫者的程式 直接控制,這樣控制權由應用程式轉移到了sprin...

ioc(依賴 依賴倒置 依賴注入)

先看一下這個大佬的部落格 我只是畫個圖 1.依賴 這個很不友好,要換別的player或者meidafile要動operation 2.依賴倒置 這個好很多了,加了兩個介面,要換別的player或者meidafile,不用動operation 3.ioc 控制反轉 控制權是我們使用者自己,如果是spr...

C 依賴注入 setter注入

在文章 c 依賴注入 初步概念了解 中,簡單的介紹了依賴注入常用三種方式 setter注入,建構函式注入,介面注入。在此文章中,使用 具化對setter注入的解釋。setter注入 就是在類a裡面定義乙個c介面的屬性d,在a的上下文通過b例項化乙個物件,然後將這個物件賦值給屬性d。主要就是set 與...