今天我升级了Android Studio 3.1,它似乎增加了一些严格检查。其中一个检查是针对未存储在变量中的一次性RxJava2subscribe()
调用的。例如,从我的Room数据库获取所有玩家列表:
Single.just(db)
.subscribeOn(Schedulers.io())
.subscribe(db -> db.playerDao().getAll());
一个大黄色块的结果和这个提示:
subscribe
的结果未被使用
对于类似这样的一次性 Rx 调用,最佳实践是什么?我应该保留 Disposable
和 dispose()
完成请求吗?还是只需要 @SuppressLint
然后继续进行下一步操作?
这只影响 RxJava2 (io.reactivex
),RxJava (rx
) 没有此 Lint。
Disposable
保留在成员范围内,并在单个完成时调用dispose()
,但这似乎过于繁琐。我很想看看是否有更好的方法来解决这个问题。 - Michael Dodd