Назад к вопросам
Junior — Middle
68
Каким образом реализовать внедрение зависимостей с помощью Dagger Hilt в Android-проекте?
Ответ от нейросети
sobes.tech AI
Dagger Hilt — это библиотека для внедрения зависимостей в Android, которая упрощает работу с Dagger. Чтобы использовать Hilt в проекте, нужно:
- Добавить зависимости в
build.gradle:
// В корневом build.gradle
buildscript {
dependencies {
classpath 'com.google.dagger:hilt-android-gradle-plugin:2.x'
}
}
// В модуле app build.gradle
plugins {
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
}
dependencies {
implementation 'com.google.dagger:hilt-android:2.x'
kapt 'com.google.dagger:hilt-android-compiler:2.x'
}
- Пометить класс Application аннотацией
@HiltAndroidApp:
@HiltAndroidApp
class MyApplication : Application() {}
- Внедрять зависимости в компоненты (Activity, Fragment, ViewModel) с помощью аннотации
@AndroidEntryPoint:
@AndroidEntryPoint
class MainActivity : AppCompatActivity() {
@Inject lateinit var repository: MyRepository
// ...
}
- Создавать модули с аннотацией
@Moduleи@InstallInдля предоставления зависимостей:
@Module
@InstallIn(SingletonComponent::class)
object AppModule {
@Provides
fun provideRepository(): MyRepository {
return MyRepositoryImpl()
}
}
Таким образом, Hilt автоматически генерирует компоненты и управляет жизненным циклом зависимостей.