我想開發應用程序,其中我有phpMyAdmin服務器上的數據庫,我從解析json對象中獲取數據,當然不同的用戶有不同的數據和一些用戶共享相同的數據。問題是,當我從服務器獲取數據時,它有時會花費很長時間,如果我將它存儲在設備上,效率會更高,但有些用戶共享相同的數據(它們可以刪除和添加數據)。所以我的問題是 - 我怎樣才能將SQlite與myPHP結合起來,以便用戶在第一次登錄數據時將從服務器獲取數據,然後插入到設備數據庫中,並且下次用戶登錄數據時取自設備數據庫。如果他將進行更改,它將更新兩個數據庫在android中的數據存儲 - 結合SQlite與myPHP
-1
A
回答
0
您必須在服務器和客戶端都複製數據庫模式。
第一次從服務器獲取結果。並將其存儲在當地的sqilite中。然後,在SharedPreferences
中存儲一個標誌,以便將來知道您必須從本地數據庫獲取結果。
之後,如果在本地數據庫中發生任何更改,您還必須在服務器上更新它。爲此,它取決於你的用例在服務器上更新的速度。
如果您不想立即使用,則可以等待並批量調用幾個電話,然後使用Job Scheduler API發佈到服務器。
如果您希望服務器上的更改儘快發生,請分離新線程並立即發佈。
0
可以這樣做到這一點..
對於不同類型的用戶,你應該根據用戶名或用戶ID的任何(由用戶在發送請求)和通用數據發送給所有用戶發送的數據。
現在來到你的主要問題..
在用戶第一次登錄請求你將發送所有相關的數據(在用戶ID /用戶名基地)從phpdatabase(從服務器)的用戶,並保存在Android中的所有數據設備。
和當用戶重新簽名在那段時間你會檢查,Android設備數據庫是空的(有數據)或沒有。如果android設備數據庫不是null,那麼你不會從phpdatabase爲用戶數據做一個新的請求。
現在,如果用戶將有任何更改像你說的用戶刪除的東西或更新的東西,那麼你已經從android設備到phpDatabase(服務器)的新請求刪除/添加/更新。首先你會在設備到服務器(phpdatabase)的請求中進行服務器端的更改,如果該服務/請求返回true,那麼您將在本地/設備數據庫更改/更新該數據。
相關問題
- 1. Json數據存儲在Android中的SQLite
- 2. Android數據存儲 - 文件與SQLite
- 3. Android在sqlite中存儲數據
- 4. 在SQLite中存儲數據
- 5. cloudsql和數據存儲與django結合
- 6. 存儲在SQLite數據庫爲Android
- 7. Android的數據庫存儲
- 8. Android - 將敏感數據存儲在sqlite數據庫中
- 9. Nativescript存儲在sqlite中的JSON數據
- 10. 在SQLite數據庫中存儲的bool
- 11. 存儲在意圖與SQLite的SQLite數據庫
- 12. 如何在Android中的SQLite數據庫中存儲時間值?
- 13. 如何在Android中的SQLite數據庫中存儲AES密碼?
- 14. 如何在URL中存儲SQLite(Android)中的xml數據?
- 15. 存儲Android SQLite
- 16. 在android中存儲大量數據
- 17. Android - 數據存儲?
- 18. Android的 - 如何在SQLite數據庫中存儲html字符串
- 19. 在Android SQLite數據庫中存儲值的最快方法?
- 20. 爲什麼BLOB值不存儲在SQLite數據庫中的Android
- 21. greenDao:將數據存儲在Android上的sqlite文件中
- 22. 在Android SQLite數據庫中存儲Google Map的位置錯誤
- 23. 在sqlite數據庫中存儲值
- 24. 如何在sqlite中存儲數據表?
- 25. 將大量數據存儲在SQLite中
- 26. Qt在QStringList中存儲SQLITE行數據
- 27. 在icloud中存儲sqlite數據庫?
- 28. 在SQLite數據庫中存儲單詞
- 29. 使用Rest在Sqlite中存儲數據
- 30. 存儲在SQLite數據庫中
你在實現這個目標時面臨什麼問題? – Yashasvi
我不知道這樣做..我已經看過並閱讀了很多有關這兩個數據庫的教程,但沒有結合它們。 – ATT
我想你必須複製數據庫,而不是將它們合併。對?然後,當改變一個時,也改變另一個。 – Yashasvi