У меня проблема с MediatorLiveData
. Я хочу получить данные из базы данных, в классе, который не является ViewModel. Я хотел бы отметить, что методы, которые загружают данные, работают во ViewModel, но когда я хочу вызвать их в другом классе, это не работает. Это код:
class MyReceiver: BroadcastReceiver() {
@Inject
lateinit var jobsRepository: jobsRepository
private val _jobStatusDone = MediatorLiveData<Boolean>()
val jobStatusDone: LiveData<Boolean>
get() = _jobStatusDone
private val _counterparties = MediatorLiveData<List<Counterparty>>()
override fun onReceive(context: Context?, intent: Intent?) {
AndroidInjection.inject(this, context)
val source = jobsRepository.getFulljobs()
_jobStatusDone.addSource(source) {
System.out.println("IT NEVER REACHES THIS PLACE.")
}
}
}
}
Это интересно, потому что обновление / вставка работает.
РЕДАКТИРОВАТЬ: Я хотел бы указать, что код, который я разместил здесь, работает в классах ViewModel.