在房间数据库中,我有一个 ID 为“1”的对象(用户),我的 DAO 正在返回该对象的 Flowable。订阅后,我调用了 editUser() 函数。
@Query ("SELECT * FROM User Where id=:id ")
Flowable<User> getUser(String id);
@Update
void update(User user);
每当我对此用户对象进行更改并在数据库中更新它时,我都没有收到任何回调(onNext 或 onComplete)。
public void editUser() {
User u = new User();
u.id="1";
u.age=45;
appDB.userModel().update(u);
}
appDB.userModel().getUser("1").subscribe(new Subscriber<User>() {
@Override
public void onSubscribe(Subscription s) {
Log.d(TAG,"onSubscribed");
}
@Override
public void onNext(User user) {
Log.d(TAG,"onNext");
}
@Override
public void onError(Throwable t) {
Log.d(TAG,"Error");
}
@Override
public void onComplete() {
Log.d(TAG,"onComplete");
}
});
谁能向我解释一下我在这里缺少什么?