Ho iniziato a utilizzare dagger 2.2 e i metodi del modulo nel builder Component sono obsoleti.Metodo del modulo builder componente Dagger 2.2 deprecato
Questo è il mio componente Application:
@Component(modules = ApplicationModule.class)
public interface ApplicationComponent {
void inject(Application application);
}
e il modulo di applicazione:
@Module
public class ApplicationModule {
Application application;
public ApplicationModule(Application application) {
this.application = application;
}
@Provides
@Singleton
Application providesApplication() {
return application;
}
}
Ecco la classe generata:
@Generated(
value = "dagger.internal.codegen.ComponentProcessor",
comments = "https://google.github.io/dagger"
)
public final class DaggerApplicationComponent implements ApplicationComponent {
private DaggerApplicationComponent(Builder builder) {
assert builder != null;
}
public static Builder builder() {
return new Builder();
}
public static ApplicationComponent create() {
return builder().build();
}
@Override
public void inject(Application application) {
MembersInjectors.<Application>noOp().injectMembers(application);
}
public static final class Builder {
private Builder() {}
public ApplicationComponent build() {
return new DaggerApplicationComponent(this);
}
/**
* @deprecated This module is declared, but an instance is not used in the component. This method is a no-op. For more, see https://google.github.io/dagger/unused-modules.
*/
@Deprecated
public Builder applicationModule(ApplicationModule applicationModule) {
Preconditions.checkNotNull(applicationModule);
return this;
}
}
}
Come posso inizializzare il componente se non con ComponentBuilder?
risposta Scan, Command + Q colpito, Android Studio si spegne . Attiva il cervello, torna indietro, leggi di nuovo la risposta. – Bri6ko
Ctrl + J a proposito. Il Ctrl + Q è un tentativo di trolling. – StarWind0
@StarWind Nessuna intenzione di pesca alla traina, questa è la scorciatoia di Windows;) –