Junior — Middle
Ako implementovať vlastnú súčasť v Hilt pre injekciu závislostí?
sobes.tech AI
Odpoveď od AI
Pre vytvorenie vlastnej zložky v Hilt je potrebné:
-
Definovať rozhranie zložky anotované s
@DefineComponent. V ňom sú uvedené závislosti, ktoré budú dostupné vo vnútri zložky. -
Vytvoriť anotáciu na prepojenie zložky s životným cyklom pomocou
@DefineComponent.Buildera@Component.Builder. -
Prepojiť vytvorenú zložku s existujúcou zložkou Hilt pomocou anotácie
@DefineComponent(parent = ...), kde sa uvádza rodičovská zložka. -
Vytvoriť anotáciu na injektovanie závislostí do tejto zložky pomocou
@EntryPointalebo@InstallIn(YourCustomComponent.class).
Príklad:
@DefineComponent(parent = SingletonComponent::class)
interface CustomComponent
@DefineComponent.Builder
interface CustomComponentBuilder {
fun build(): CustomComponent
}
@InstallIn(CustomComponent::class)
@Module
class CustomModule {
@Provides
fun provideSomething(): Something = Something()
}
Týmto spôsobom môžete vytvárať vlastné komponenty s požadovaným rozsahom a spravovať závislosti flexibilnejšie.