Sobes.tech
Junior — Middle

Quale annotazione in Dagger viene usata per iniettare una dipendenza esterna in un componente?

sobes.tech AI

Risposta dell'AI

Per iniettare una dipendenza esterna in un componente Dagger, si utilizza l'annotazione @Component.Builder o @Component.Factory, e per passare la dipendenza stessa si utilizza l'annotazione @BindsInstance.

Ad esempio, se si desidera passare un oggetto creato fuori da Dagger, si può usare @BindsInstance nel builder del componente:

@Component
interface MyComponent {
    void inject(MyClass target);

    @Component.Builder
    interface Builder {
        @BindsInstance
        Builder externalDependency(ExternalDependency dep);
        MyComponent build();
    }
}

In questo modo, @BindsInstance consente di iniettare una dipendenza esterna nel grafo delle dipendenze del componente.