2017-02-17 32 views
6

Dodaję Dagger2 do mojej aplikacji Android po instructions from the official docs. Używałem wcześniej Daggera i Daggera2, wygląda na to, że Google ulepszyło implementację dla Androida z następującej oferty;Sztylet2 sztylet.android. * Klasy nie istnieją

Klasy w sztylcie.android oferują jedno podejście, aby uprościć ten wzór.

...

Następnie złożyć podanie wdrożyć HasDispatchingActivityInjector i @Inject się DispatchingAndroidInjector wrócić z activityInjector() metoda:

Wygląda super, ale nie mogę znaleźć pakiet dagger.android w dowolnym miejscu, ani nie znajduję niczego, gdy przeglądam repozytorium, HasDispatchingActivityInjector nie daje żadnych trafień w Google. Gdzie są te klasy opisane w dokumentacji?

Mogę znaleźć wszystkie inne klasy Dagger2 w porządku (moduł itp.), Więc biblioteki są dostępne.

sztylet zależności od build.gradle:

compile 'com.google.dagger:dagger:2.9' 
compile 'com.google.dagger:dagger-android:2.9' 
annotationProcessor 'com.google.dagger:dagger-compiler:2.9' 

Odpowiedz

6

Kod jest wymienione w google/dagger Github repository pod java/dagger/android subtree, popełnione cztery dni temu (Feb 13, 2017 15:58 CET). Obejmuje to HasDispatchingActivityInjector.

Twój plik gradle jest poprawny: Rozszerzenia Androida Daggera są dostępne za pośrednictwem sąsiadującego pakietu dagger-android, a nie za pośrednictwem głównego pakietu . See Maven's Dagger packages for more details.

EDIT: As of yesterday the dagger.android Android helpers are released in version 2.10-rc1

+0

fajnie tam jest! Całkiem nowe rzeczy, które widzę. W każdym razie mam 'com.google.dagger: dagger-android: 2.9' jak widać powyżej, ale najnowsze wydanie było 14 dni temu, 11 dni przed pojawieniem się' dagger.android'. Wydaje się, że wczesna dokumentacja została wykonana! Zaznaczę to jako odpowiedź, dzięki. –

6

dagger.android klasy zostały dodane w wersji 2.10 here are release notes.

aby Twój kod działa trzeba zaktualizować zależności sztylet build.gradle:

compile 'com.google.dagger:dagger:2.10' 
compile 'com.google.dagger:dagger-android:2.10' 
annotationProcessor 'com.google.dagger:dagger-compiler:2.10'