Ответ
Да, работал с Hilt — это упрощённая DI-библиотека на основе Dagger, созданная для Android. Она минимизирует шаблонный код за счёт аннотаций (например, @HiltAndroidApp, @AndroidEntryPoint).
Пример внедрения зависимости:
@Module
@InstallIn(SingletonComponent::class)
object AppModule {
@Provides
fun provideRepository(): Repository = RepositoryImpl()
}
@AndroidEntryPoint
class MainActivity : AppCompatActivity() {
@Inject lateinit var repository: Repository
}
Плюсы:
- Автоматическая генерация компонентов (Activity, Fragment и т.д.).
- Интеграция с ViewModel через
@HiltViewModel. - Меньше ручной настройки по сравнению с чистым Dagger.
Минусы:
- Менее гибкий, чем Dagger, в сложных сценариях.
- Требует понимания базовых принципов DI.