1.Hilt與Dagger:
Hilt 在依賴項注入庫?Dagger?的基礎(chǔ)上構(gòu)建而成,提供了一種將 Dagger 納入 Android 應(yīng)用的標(biāo)準(zhǔn)方法。
關(guān)于 Dagger,Hilt 的目標(biāo)如下:
簡化 Android 應(yīng)用的 Dagger 相關(guān)基礎(chǔ)架構(gòu)。
創(chuàng)建一組標(biāo)準(zhǔn)的組件和作用域,以簡化設(shè)置、提高可讀性以及在應(yīng)用之間共享代碼。
提供一種簡單的方法來為各種構(gòu)建類型(如測試、調(diào)試或發(fā)布)配置不同的綁定。
由于 Android 操作系統(tǒng)會實例化它自己的許多框架類,因此在 Android 應(yīng)用中使用 Dagger 要求您編寫大量的樣板。Hilt 可減少在 Android 應(yīng)用中使用 Dagger 所涉及的樣板代碼。Hilt 會自動生成并提供以下各項:
用于將 Android 框架類與 Dagger 集成的組件?- 您不必手動創(chuàng)建。
作用域注釋?- 與 Hilt 自動生成的組件一起使用。
預(yù)定義的綁定?- 表示 Android 類,如?Application?或?Activity。
預(yù)定義的限定符?- 表示?@ApplicationContext?和?@ActivityContext。
Dagger 和 Hilt 代碼可以共存于同一代碼庫中。不過,在大多數(shù)情況下,最好使用 Hilt 管理您在 Android 上對 Dagger 的所有使用。
2.使用方法:
https://github.com/android/architecture-samples/tree/dev-hilt