Hilt – Une nouvelle bibliothèque d’injection de dépendances pour Android
Jusqu’à présent, nous avons vu comment jouer avec Hilt autour de composants Android et de bibliothèques tierces. Il est maintenant temps de faire un pas en avant et de travailler avec l’injection du modèle de vue.
Avant d’aller plus loin, nous devons ajouter quelques bibliothèques supplémentaires à notre projet pour faire fonctionner Hilt avec les bibliothèques Jetpack comme les modèles de vue et le gestionnaire de travaux.
Incluez les bibliothèques suivantes sous la balise dependencies dans le fichier build.gradle au niveau de l’application.
Ces bibliothèques fournissent des extensions pour les bibliothèques jetpack comme view-model et workmanger pour travailler avec Hilt. Ils généreront le code passe-partout pour économiser des tonnes de temps aux développeurs.
Maintenant que nous avons ce dont nous avions besoin, commençons par la classe view-model. Tout d’abord, nous devons inclure @ViewModelInject
dans le constructeur du modèle de vue à. Cela indiquera à Hilt comment fournir l’instance du modèle de vue. Regarde:
Maintenant, dans les composants Android comme Activity et fragments, nous pouvons les utiliser directement sans @inject, mais avec by viewModels()
fonction de délégué. Regarde:
private val mainViewModel: MainViewModel by viewModels()
Si vous souhaitez utiliser le modèle de vue du niveau d’activité, nous devons appliquer by activityViewModels()
déléguer la fonction au lieu de by viewModels()
. C’est tout ce que vous pouvez faire avec votre architecture MVVM avec Hilt.