Я хочу попробовать Hilt DI в своем приложении
Я сделал все шаги, чтобы добавить Hilt в свое приложение, но моя проблема в том, что он показывает мне ошибку в My BaseFragment, говорит:
ошибка: ожидается topLevelClass = BaseFragment ‹T, D› .class ^ error: [Hilt]
а BaseFragment прост:
@AndroidEntryPoint
abstract class BaseFragment<T : ViewModel,D : ViewDataBinding>() : Fragment() {
@Inject
lateinit var viewModel: T by viewModels()
}
а для viewModel by viewModels () не работает показать мне ошибку
Нельзя использовать "T" как параметр овеществленного типа. Вместо этого используйте класс. Тип Lazy не имеет метода setValue (BaseFragment ‹T, D›, KProperty ‹*›, T) и, следовательно, не может служить делегатом для var (свойство чтения-записи). **
поэтому я использовал Factory, как и в Dagger, и он работает, но все же моя проблема в
BaseFragment
Я благодарен вам за помощь и заранее спасибо
РЕДАКТИРОВАТЬ: ответьте на эти проблемы на github, и они это скажут была ошибка, и они забанят @AndroidEntryPoint для базовых классов с параметрами типа -