我试图创建一个DatabaseHelper类来分隔出一些Room的东西。 DatabaseHelper不是Activity或Fragment。我试图做以下的事情
roomDb.mediaItemDownloadDao()
.findById(mediaItemId)
.subscribeOn(Schedulers.io())
.subscribe(oldDownload -> {
oldDownload.setSomeField(true);
roomDb.mediaItemDownloadDao().insert(oldDownload);
});
}
但它告诉我未使用订阅的结果。有没有办法确保执行然后立即处置?我是否应该将一次性送到来电者?什么是在片段/活动之外完成我想要/使用rx对象的最佳方法?
答案 0 :(得分:0)
所以我认为不是去RX,我想用
rx.schedulers.Schedulers.io().createWorker()
然后把工作放在那里=]
答案 1 :(得分:0)
This question与您的相似。我想补充一点,您应该将订阅Disposable
添加到帮助程序中的CompositeDisposable
,并且在销毁父活动时,将调用链接以处置您的CompositeDisposable
。