我正在從服務器下載城鎮和城市名稱列表作爲JSON文件,並將它們解析爲對象/字符串。我只需要在下載後第一次啓動應用程序時下載此數據一次,將此數據保存到Android設備的本地存儲中以用於填充微調器(下拉菜單/組合框)菜單並僅在更新數據時纔會更新數據用戶想要/需要。什麼是實施這個最好的方法?如何在Android上保存,更新和查看本地數據?
-2
A
回答
0
正如在評論中提到 -
,如果你已經在使用它你可以將其保存在SQLlite DB。如果它的數據太少,而且你的應用程序不在任何地方使用SQLlite,它可能看起來有很多工作,然後你可以將它保存在SharedPreference中。只是不嘗試存儲太多的數據共享偏好
0
一些策略,可能會幫助,共同邏輯是:
爲你只需要一次靜態數據策略:** **
- 檢查您查找的數據是否存在於本地存儲中。
- 從存儲獲得這些數據
策略,你可能需要更多然後一旦數據,你必須從服務器沒有版本控制:
- 檢查您尋找的數據存在於本地存儲中。
- 檢查該數據被更新到最新版本
- 如果爲真 - 從存儲
- 如果虛假獲取的數據 - 從存儲刪除數據,並下載最新的數據。
策略的數據,你可能需要更多的那麼一次,你有從服務器版本控制:
- 獲取本地數據版本 - 如果不存在移動到階段5
- 與服務器檢查您的版本是否是最新的。
- 如果是最新的 - 從本地存儲
- 得到的數據。如果舊的 - 從服務器中插入數據
- 從存儲獲得的數據
本地存儲選項:
- SharedPreferences - this是一種重要/價值類型的存儲,對於小事來說很好,但根據我的經驗,您也可以在這裏保存大數據,但我不會這麼建議。
- Room - Android的新的持久性庫
- SugerORM - 第三方庫,很好的和流行的
- GreenDAO - 第三方庫,也很好的和流行的
- Other Database libraries - SQL和NonSql基礎的解決方案
- 最舊學校 - 將數據保存到文件使用OutputStreamWriter
結論:
選擇什麼似乎可以幫助您處理當前和未來的任務,您使用這些選項的方式是相同的(使用我在頂部編寫的策略),但使用不同的方法。
我不知道你的項目規模是什麼,這就是爲什麼你必須爲你選擇正確的方式。
祝你好運! = D
相關問題
- 1. 如何查看保存在android數據庫(SQLite)中的數據?
- 2. 如何查看本地存儲更改
- 3. 如何在本地(在本機上)保存JSON數據?
- 4. 如何在本地保存html數據
- 5. 保存和查看數據的時區
- 6. 如何在Android Studio webview中本地保存數據
- 7. 如何在本地存儲器中更新數據JavaScript
- 8. 如何在Android上查看本地服務器?
- 9. 如何保護加載數據本地infile更新查詢針對sql注入
- 10. Android:從在線數據庫更新本地數據庫
- 11. 保存到本地數據庫和Android中的Firebase
- 12. 如何在SVN上保存/恢復本地更改
- 13. SQL Server:拉和更新本地數據
- 14. 在Android上查看sqlite數據庫
- 15. 如何將數據保存到Android上的文本文件?
- 16. AngularJs:在angularJs本地保存數據
- 17. winforms在本地保存數據表
- 18. RStudio:從查看器保存數據
- 19. 如何在本地內存中存儲動態數據:Android
- 20. 如何在Android中保存數據?
- 21. 如何將數據從解析保存到本地數據
- 22. 保存數據以保持更新(Unity3D)
- 23. 將數據保存到本地存儲
- 24. 將數據保存到本地存儲
- 25. 在Groovy腳本中查看SQL保存
- 26. 是更好地在本地存儲數據,或從網上
- 27. 如何查看本地和存儲庫之間的mercurial差異?
- 28. 如何更新保存用戶數據的數據庫
- 29. Android如何查看版本
- 30. 我如何保存在本地存儲
如果您已經在使用它,您可以將它保存在SQLlite數據庫中。如果它的數據不是太多,而且你的應用程序不在任何地方使用SQLlite,它可能看起來很多工作,然後你可以將它保存在SharedPreference中。 –
謝謝!我將使用SharedPreferences。它看起來像我需要什麼。 – GorkemSahin
共享首選項用於存儲少量數據,而SQLite數據庫用於大量數據 –