Junior — Middle
Jak lze implementovat vlastní komponentu v Hilt pro injekci závislostí?
sobes.tech AI
Odpověď od AI
Pro vytvoření vlastního komponentu v Hilt je třeba:
-
Definovat rozhraní komponentu anotované
@DefineComponent. V něm jsou uvedeny závislosti, které budou dostupné uvnitř komponentu. -
Vytvořit anotaci pro propojení komponentu s životním cyklem pomocí
@DefineComponent.Buildera@Component.Builder. -
Propojit vytvořený komponent s existujícím komponentem Hilt pomocí anotace
@DefineComponent(parent = ...), kde je uveden rodičovský komponent. -
Vytvořit anotaci pro injekci závislostí do tohoto komponentu pomocí
@EntryPointnebo@InstallIn(YourCustomComponent.class).
Pří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 způsobem lze vytvářet vlastní komponenty s požadovaným rozsahem a spravovat závislosti flexibilněji.