Room RXJava 加载数据库并仅在之后对更改做出反应

问题描述

我有一个简单的 RXJava 实现,当应用加载时,整个数据库也被加载:

disposable ds = viewmodel.geAllUsers()
   .subscribeOn(Schedulers.computation()) 
   .observeOn(AndroidSchedulers.mainThread()) 
   .subscribe(modelClasses ->
   {
    Toast.makeText(this,"RoomWithRx: " + modelClasses.size(),Toast.LENGTH_LONG).show();
   },e -> Toast.makeText(this,"Error: " + e.getMessage(),Toast.LENGTH_LONG).show()
);

问题是当我添加用户时:

disposable subscribe1 = viewmodel.addData2(new User(4,"ok","test"))
 .subscribe(
  newUserID-> {  },throwable -> { }
);

由于我订阅用户表,每次更改都会触发订阅者并再次加载整个数据库。如何定义一种方法,一旦开始加载数据库,只应加载更改的用户?不幸的是,没有 noChange() 方法

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)