Запросы Livedata и Room - PullRequest
       3

Запросы Livedata и Room

0 голосов
/ 18 апреля 2019

Я пользуюсь базой данных комнат и живыми данными.У меня нет проблем с данными, связанными с пользовательским интерфейсом, потому что я наблюдаю за запросом базы данных по активности через модель представления.Но мне нужны некоторые данные в viewmodel (не в активности) из db, я не могу использовать их там, потому что livingata не работает без наблюдения.Если я пытаюсь получить эти данные без Livedata из базы данных, я получаю, что вы не можете получить данные из базы данных в ошибке потока пользовательского интерфейса.Как я могу решить это?

Ps: я обращаюсь к БД через репозиторий.

Мой DAO:

@Query("SELECT * from loggedUser limit 1")
LiveData<LoggedUser> getLoggedUser();

Репозиторий:

public LiveData<LoggedUser> executeGetLoggedUser() {
    return userDao.getLoggedUser();
}

Viewmodel:

    private MediatorLiveData<LoggedUser> loggedUser = new MediatorLiveData<>();
    final LiveData<LoggedUser> tt = ribonyRepository.executeGetLoggedUser();
    loggedUser.addSource(tt, new Observer<LoggedUser>() {
        @Override
        public void onChanged(@Nullable LoggedUser loggedUser) {
             //No data is coming to here
        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...