La aplicación se bloquea tan pronto como se instala y arroja el extraño error anterior. He anotado la actividad como se muestra a continuación, así como sus fragmentos secundarios.
@AndroidEntryPoint class HomeActivity : AppCompatActivity() { companion object{ lateinit var currentUser: User } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_home) val navController = Navigation.findNavController(this, R.id.home_nav) val bottomNavigationView: BottomNavigationView = findViewById(R.id.bottom_navigation) bottomNavigationView.setupWithNavController(navController) fetchCurrentUser() }Adjuntar también la clase de aplicación, que es obligatoria para todas las aplicaciones que usan Hilt según la documentación.
@HiltAndroidApp class CoreApplication:Application()y el logcat del accidente
Caused by: java.lang.IllegalStateException: Hilt Activity must be attached to an @AndroidEntryPoint Application. Found: class androidx.multidex.MultiDexApplication at dagger.hilt.android.internal.managers.ActivityComponentManager.createComponent(ActivityComponentManager.java:82) at dagger.hilt.android.internal.managers.ActivityComponentManager.generatedComponent(ActivityComponentManager.java:65) at com.example.vcare.home.Hilt_HomeActivity.generatedComponent(Hilt_HomeActivity.java:43) at com.example.vcare.home.Hilt_HomeActivity.inject(Hilt_HomeActivity.java:62) at com.example.vcare.home.Hilt_HomeActivity.onCreate(Hilt_HomeActivity.java:37) at com.example.vcare.home.HomeActivity.onCreate(HomeActivity.kt:27) at android.app.Activity.performCreate(Activity.java:7224) at android.app.Activity.performCreate(Activity.java:7213) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1272) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2926)¿Declaró su clase de aplicación en el manifiesto?
Agregar
<aplicación android:name=".CoreApplication" .... />
En mi caso, me encontré con un error al implementar un repositorio en la clase ViewModel.
Seguí algunas correcciones para resolver los errores.
¡Ahora se resolvió el problema con Hilt con MVVM y la arquitectura limpia!
La solución a este problema fue: Declarar android:name = ".CoreApplication" en su archivo AndroidManifest.xml , en la etiqueta <application .../> .
Para mí, la solución fue ligeramente diferente: en mi módulo principal solo necesitaba Hilt para la clase de aplicación, así que solo agregué la dependencia de hilt-android:
implementation 'com.google.dagger:hilt-android:2.33-beta'Lo que resultó en el mensaje de error anterior.
Lo que olvidé fue agregar también la dependencia de compilación al módulo de la aplicación:
kapt 'com.google.dagger:hilt-compiler:2.33-beta'Esto resolvió el problema, ya que me faltaba la clase generada.