Настройка Hilt
Добавляйте Hilt и компонент приложения
«Настройка Hilt» — бесплатный урок Android Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Android Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Android Academy содержит 4 уроков всего.
Добавление Hilt в проект
Hilt требует плагин Gradle, зависимости и процессор аннотаций (KSP или kapt). Настройка выполняется один раз для каждого проекта.
Плагин Gradle
Примените плагин Hilt в файле сборки модуля вместе с KSP.
// module build.gradle.kts
plugins {
id("com.google.dagger.hilt.android")
id("com.google.devtools.ksp")
}Зависимости
Добавьте среду выполнения Hilt и компилятор.
dependencies {
implementation("com.google.dagger:hilt-android:2.x")
ksp("com.google.dagger:hilt-compiler:2.x")
}Аннотирование Application
Hilt нужна точка входа на уровне приложения. Создайте подкласс Application, аннотированный с помощью @HiltAndroidApp.
import android.app.Application
import dagger.hilt.android.HiltAndroidApp
@HiltAndroidApp
class MyApp : Application()Регистрация в манифесте
Укажите этот класс в теге application манифеста.
<application
android:name=".MyApp"
... >Что делает @HiltAndroidApp
Она запускает генерацию кода Hilt и создаёт контейнер зависимостей уровня приложения — корень всего графа зависимостей.
Включение внедрения в Activity
Аннотируйте любую Activity, которой требуется внедрение, с помощью @AndroidEntryPoint.
import dagger.hilt.android.AndroidEntryPoint
@AndroidEntryPoint
class MainActivity : ComponentActivity() {
// Hilt can now inject members here
}Точки входа для других классов
@AndroidEntryPoint также работает с Fragment, Service и BroadcastReceivers. Она связывает каждый из них с графом Hilt в соответствующей области действия.
Внедрение в поле
Внутри точки входа можно запросить зависимости, указав @Inject над полем.
@AndroidEntryPoint
class MainActivity : ComponentActivity() {
@Inject lateinit var analytics: Analytics
}Иерархия компонентов
Hilt создаёт иерархию: SingletonComponent (приложение) → ActivityRetainedComponent → ViewModelComponent → ActivityComponent. Для каждого компонента предусмотрена соответствующая аннотация области действия.
Контрольный список настройки
- Примените плагины Hilt и KSP.
- Добавьте зависимости среды выполнения и компилятора.
- Создайте Application с аннотацией
@HiltAndroidApp. - Пометьте потребителей аннотацией
@AndroidEntryPoint.
Быстрая проверка
Проверьте, насколько хорошо Вы поняли настройку Hilt.
Итоги
Вы узнали:
- Применять плагины Hilt и KSP и добавлять зависимости.
- Application с аннотацией
@HiltAndroidAppсоздаёт корневой контейнер. @AndroidEntryPointвключает внедрение в Activity и Fragment.- Использовать
@Injectдля внедрения в поле.
Часто задаваемые вопросы
Урок «Настройка Hilt» бесплатный?
Да — полный текст урока «Настройка Hilt» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Android Academy, подпишись на CoddyKit PRO. Курс Android Academy содержит 4 уроков всего.
Чему я научусь в уроке «Настройка Hilt»?
Добавляйте Hilt и компонент приложения Ты практикуешь Android Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Android Academy?
Предыдущий опыт не требуется. Android Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Настройка Hilt»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Android Academy?
Да. Каждый урок Android Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Зачем нужно внедрение зависимостей
- Настройка Hilt
- Модули и провайдеры
- Внедрение зависимостей в ViewModel