Android
2019-10-18
Ten materiał jest częścią kursu Dagger2 w Android
na platformie Udemy. Omawiam tam krok po kroku wprowadzenie oraz używanie biblioteki Dagger2 służącej do wstrzykiwania zależności.
Kilka darmowych odcinków można znaleźć tutaj:
Kurs Dagger2 w Android
Ucząc się wstrzykiwania zależności z Dagger'em zwykle zaczynamy od utworzenia komponentu bazowego i przekazania mu kontekstu aktywności lub aplikacji.
Schemat ten mimo, że popularny to niszczy wzorzec, gdyż klasa nie powinna wiedzieć niczego o wstrzykiwaniu!
Rozwiązanie na ten problem istnieje i właśnie je pokażę 😉
Aby zacząć korzystać z komponentów dla Androida, musimy dodać zależności do naszego pliku build.gradle.
Najnowszą wersję Dagger'a można sprawdzić tutaj:
mvnrepository.com
Konfigurację kodu zaczynamy od rozszerzenia klasy bazowej o DaggerApplication
Następnie inicjujemy nasz główny komponent. Wygląda to tak:
Teraz w komponencie musimy także dokonać zmiany.
Do modułów dodajemy:
Komponent rozszerzamy także o AndroidInjector.
Całość wygląda tak:
Jak teraz określimy, które Activity będzie korzystać z wstrzykiwania? Za pomocą właśnie naszej klasy ActivityBindingModule.
Musi ona posiadać metody z typem odpowiedniego Activity. Każda koniecznie opatrzona adnotacją @ContributesAndroidInjector.
I tak oto pozbyliśmy się metody inject() z aktywności 🙌. Ostatnie co trzeba wykonać to rozszerzyć nasze Actvity o DaggerAppCompatActivity.
Dziękuję Ci za przeczytanie tego materiału 😀 Jeżeli spodobało Ci się to o czym piszę, możesz sprawdzić więcej materiałów na blogu lub udostępnić znajomym. Będzie mi bardzo miło 😊
Jestem młodym programistą, który dumnie dzierży wiele pasji takich jak bieganie czy piwowarstwo domowe. Jedną z nich jest także programowanie i o tym właśnie zamierzam tutaj pisać.
Zachęcam Cię do odwiedzenia mojej strony na Google Play store i sprawdzenia wszystkich moich aplikacji.