如何使用Android Room和RxJava进行单行查询?我能够查询项目列表,没有任何问题。在这里,我想查找特定行是否存在。根据文档,似乎可以返回Single并检查是否存在EmptyResultSetException异常。
我可以像下面这样:
@Query("SELECT * FROM Users WHERE userId = :id LIMIT 1")
Single<User> findByUserId(String userId);
我该如何使用这个调用?看起来有一些onError / onSuccess,但是在Single<>上找不到这些方法。
usersDao.findByUserId("xxx").???
任何工作示例都将是很棒的!
User
,你需要在后台线程上进行findByUserId()
调用。在第二个引用段落之后的示例中,我正在使用你的Single<User>
版本的findByUserId()
,如果你在后台线程上进行subscribe()
,它会为你处理后台线程。 - CommonsWare