2017-08-12 1 views
7
@Query("SELECT * FROM userdata") 
Flowable<List<UserData>> allUserDatas(); 

@Insert(onConflict = OnConflictStrategy.REPLACE) 
List<Long> insert(List<UserData> datas); 


userDao.allUserDatas() 
take(1). 
filter(....) 
    .subscribeOn(io()) 
    .observeOn(mainThread()) 
    .subscribe(userDatas -> Log.i("TAG",""+userDatas)); 

の更新を受信することができる)が、DBを更新した後、それはなぜ流動性を規定する理由私はONATTACH(で同じフラグメントに加入してフェッチ添加DB

+0

フラグメントコードを記入してください。 – theFunkyEngineer

答えて

6

問題が見つかりました。

take(1)が原因で、完全に完了したため変更を聞くことができませんでした。 take(1)を削除しました。

3

、DBからのフェッチのサブスクリプションを呼び出しませんあなたは、あなたのFlowable allUserDatas()をCompositeDisposableのインスタンスに追加しなければならないと思われ、CompositeDisposableでclearを呼び出すまで、サブスクリプションは生き残ります。

+0

いいえ、それは動作しません、最初に私はそれが動作するフラグメントを開くが、その後、私はその断片にあり、DBで削除または更新 –

関連する問題