我已經(jīng)在我的應(yīng)用程序中實(shí)現(xiàn)了房間持久性庫。使用這個 i 是 1.將數(shù)據(jù)添加到表中 2.顯示它 3.刪除表 Im 在循環(huán)中執(zhí)行這三個步驟。但這里的問題是,只有在重新啟動應(yīng)用程序后,才會刪除表內(nèi)容。意味著在我重新啟動應(yīng)用程序之前,表數(shù)據(jù)不會被刪除。我的代碼在這里添加,讀取,顯示數(shù)據(jù)庫表public void DatabaseTask{for(getting data from web server){//Adding them to database AddToDatabase addToDatabase=new AddToDatabase(file.getId(),file.getName(),"punith@gmail.com"); addToDatabase.execute();}//Reading Table from Database ReadFromDatabase readFromDatabase=new ReadFromDatabase(); readFromDatabase.execute();//Deleting table from database DeleteFromDatabase deleteFromDatabase=new DeleteFromDatabase(); deleteFromDatabase.execute();}This DatabaseTask class will be executed every 15 minutes用于添加、讀取、刪除的異步任務(wù)類 private class AddToDatabase extends AsyncTask<String,String,String>{ String id; String name,email; public AddToDatabase(String id,String name, String email){ this.id=id; this.name=name; this.email=email; } @Override protected String doInBackground(String... strings) { User user=new User(); user.setId(id); user.setName(name); user.setEmail(email); MainActivity.myAppDatabase.myDao().addUser(user); return null; } @Override protected void onPostExecute(String s) { Log.d("mPavan001", "add done"); super.onPostExecute(s); } } private class ReadFromDatabase extends AsyncTask<String,String,String>{ @Override protected String doInBackground(String... strings) { List<User> users=MainActivity.myAppDatabase.myDao().getUsers(); for(User usr: users){ String id=usr.getId(); String name=usr.getName(); String email=usr.getEmail(); info=info+"\n\n"+"id :"+id+"\n Name :"+name+"\n Email :"+email; } return null; }如何解決此問題?請詢問您是否需要更多詳細(xì)信息。
2 回答

MMTTMM
TA貢獻(xiàn)1869條經(jīng)驗 獲得超4個贊
看起來您只是在刪除數(shù)據(jù),而不偵聽其更改。
請考慮使用 從數(shù)據(jù)庫獲取數(shù)據(jù),并在 or 中進(jìn)行觀察。這樣,您的視圖將始終了解數(shù)據(jù)更改。LiveData
LiveData
Fragment
Activity
還有一件事是,您可能在刪除數(shù)據(jù)后手動檢查數(shù)據(jù)更改。如果是這樣:請發(fā)布該塊的代碼。

九州編程
TA貢獻(xiàn)1785條經(jīng)驗 獲得超4個贊
我做了一個愚蠢的錯誤,我使用信息字符串來顯示數(shù)據(jù)庫表值。但我沒有在每次循環(huán)迭代時將其設(shè)置為 null。因此,它也曾經(jīng)存儲來自上一個循環(huán)迭代的數(shù)據(jù),即使數(shù)據(jù)庫表被刪除了!
添加回答
舉報
0/150
提交
取消