Как добавить контекст в метод с использованием Dagger Hilt?

Инжектировать Context через @ApplicationContext или @ActivityContext.

Короткий ответ

Что ответить на собеседовании

Инжектировать Context через @ApplicationContext или @ActivityContext.

Подробный разбор

Ответ с пояснениями

Инжектировать Context через @ApplicationContext или @ActivityContext.

class MyViewModel @Inject constructor(
    @ApplicationContext private val context: Context // Инъекция контекста приложения
) : ViewModel() {
    // Использование context
}
class MyFragment @Inject constructor() : Fragment() {

    @Inject
    lateinit var myPresenter: MyPresenter // Инъекция презентера, использующего контекст Activity

    override fun onAttach(context: Context) {
        super.onAttach(context)
        // Dagger Hilt произведет инъекцию
    }
}

class MyPresenter @Inject constructor(
    @ActivityContext private val context: Context // Инъекция контекста Activity
) {
    // Использование context
}

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку