Middle
¿Cómo realizar la inyección de dependencias en un campo usando Dagger Hilt?
sobes.tech AI
Respuesta de la IA
La inyección de dependencias en un campo usando Dagger Hilt se realiza mediante el uso de la anotación @Inject antes de la declaración del campo en una clase anotada con @AndroidEntryPoint.
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
@AndroidEntryPoint // Esta clase será inyectada en la aplicación
class MyActivity : AppCompatActivity() {
@Inject // Inyectamos la dependencia
lateinit var myDependency: MyDependency
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// ...
myDependency.doSomething()
}
}
La anotación @Inject indica a Hilt que este campo necesita una dependencia. Hilt buscará un proveedor correspondiente (por ejemplo, un módulo de Dagger) para el tipo MyDependency y proporcionará una instancia de este tipo en este campo al crear una instancia de MyActivity.
Es importante recordar que la clase MyActivity debe estar anotada con @AndroidEntryPoint para que Hilt pueda inyectar dependencias en sus campos. Además, el campo a inyectar no puede ser privado (private).