Quando uso Dagger, ho scoperto che sto ricevendo più istanze di un singleton quando lo inserisco ovunque ne abbia bisogno. Ho annotato la classe e il metodo fornisce con @Singleton
. Qualcuno può pensare perché questo sta accadendo?Singletons in Dagger 1.x
Edit:
Se aiuta, ho seguito la stessa struttura per la mia app, come l'applicazione di esempio in GitHub di Dagger (https://github.com/square/dagger/tree/master/examples/android-activity-graphs). Sto cercando di ottenere Singleton nell'attività di base e un paio di classi di terze parti fornite utilizzando @Provides
nella classe personalizzata Application
. È perché sto aggiungendo moduli per ogni attività al grafico dell'oggetto originale?
(PS: Sono nuovo di Dagger e DI, in generale, così sarò grato se potesse fornire una spiegazione in modo che io possa imparare Grazie..)
Grazie per averlo chiarito. Quando dici spec, ti riferisci a JSR330? – Raghuveer
Sì. Spiacente, modificherò la risposta. –
@ChristianGruber Come si applica a Costruttori iniettati singleton utilizzati in vari sottogrammi di un grafico padre? Significa un grafico per riga in cui viene utilizzata la classe, tranne quando esiste già in un grafico padre? – vinc3m1