У меня есть следующий базовый класс:
abstract class BaseFragment<T : BaseViewModel> : Fragment(), JobHolder {
protected lateinit var viewModel: T
private set
protected fun provideViewModel(type: Class<T>) {
viewModel = ViewModelProviders.of(this).get(type)
}
}
и следующий класс:
class SubjectEditor : BaseFragment<SubjectEditorViewModel>() {
override fun onAttach(context: Context?) {
super.onAttach(context)
provideViewModel(SubjectEditorViewModel::class.java)
}
}
Но ProGuard жалуется:
Warning: cz.x.ui.subjects.SubjectEditor: can't find referenced method 'void setViewModel(cz.x.ui.BaseViewModel)' in program class cz.x.ui.subjects.SubjectEditor
Я попробовал некоторые -keep
правила для ProGuard, но ничего не получалось. Какое правильное решение?