Я использую Dagger2 для DI в приложении для Android,
Я хочу добавить viewModel во фрагмент AndroidInjector
и иметь две строки:
AndroidInjection.inject(this)
viewModel = ViewModelProviders.of(this, viewModelFactory).get(ProductDetailViewModel::class.java)
Когда мой фрагмент расширяетсяandroidx.fragment.app.Fragment
показывает эту ошибку:
- первая строка использует устаревший
android.support.v4.app.Fragment
- , а вторая использует
android.app.Fragment
сейчас я незнаю, что мой фрагмент должен быть расширен!
Я получаю эту ошибку, когда выбираю один из них:
None of the following functions can be called with the arguments supplied:
public open fun inject(activity: Activity!): Unit defined in dagger.android.AndroidInjection
public open fun inject(fragment: Fragment!): Unit defined in dagger.android.AndroidInjection
public open fun inject(service: Service!): Unit defined in dagger.android.AndroidInjection
public open fun inject(contentProvider: ContentProvider!): Unit defined in dagger.android.AndroidInjection