Java 如何在Android上保存、更新和查看本地数据?

Java 如何在Android上保存、更新和查看本地数据?,java,android,local-storage,Java,Android,Local Storage,我正在从服务器下载一个城镇和城市名称列表作为JSON文件,并将它们解析为对象/字符串。我只需要在下载后第一次启动应用程序时下载一次此数据,将此数据保存到Android设备的本地存储,用于填充微调器(下拉/组合框)菜单,并仅在用户想要/需要时更新数据。实现这一点的最佳方法是什么?如评论中所述- 如果已经在使用它,可以将其保存在SQLlite数据库中。如果数据不太多,并且你的应用程序在任何地方都不使用SQLlite,那么可能需要做很多工作,然后你也可以将其保存在SharedReference中。只是

我正在从服务器下载一个城镇和城市名称列表作为JSON文件,并将它们解析为对象/字符串。我只需要在下载后第一次启动应用程序时下载一次此数据,将此数据保存到Android设备的本地存储,用于填充微调器(下拉/组合框)菜单,并仅在用户想要/需要时更新数据。实现这一点的最佳方法是什么?

如评论中所述-


如果已经在使用它,可以将其保存在SQLlite数据库中。如果数据不太多,并且你的应用程序在任何地方都不使用SQLlite,那么可能需要做很多工作,然后你也可以将其保存在SharedReference中。只是不要试图在共享偏好中存储太多数据

一些可能有用的策略,常见的逻辑是:


  • 仅需一次的静态数据策略:****

  • 检查您要查找的数据是否存在于本地存储中
  • 从存储器中获取数据

  • 您可能需要不止一次且没有服务器版本控制的数据策略:

  • 检查您要查找的数据是否存在于本地存储中
  • 检查该数据是否更新为最新版本
  • 如果为true-从存储器中获取该数据
  • 如果为false-从存储器中删除数据并下载最新数据

  • 您可能需要不止一次的数据策略,并且您确实拥有来自服务器的版本控制:

  • 获取您的本地数据版本-如果不存在,请转至第5阶段
  • 请向服务器确认您的版本是最新的
  • 如果是最新的-从本地存储获取数据
  • 如果旧-从服务器插入数据
  • 从存储器中获取数据

本地存储选项:

  • -这是一种关键/价值型存储,非常适合于小事情,但根据我的经验,您也可以在这里保存大数据,但我不建议这样做
  • -android的新持久性库
  • -第三方图书馆,非常好且受欢迎
  • -第三方图书馆,也很好,很受欢迎
  • -基于Sql和非Sql的解决方案
  • 最古老的学校-使用
  • 总之:

    选择那些似乎能帮助你完成当前和未来任务的选项,你使用这些选项的方式是相同的(使用我在顶部写的策略),但方法不同

    我不知道你的项目规模有多大,这就是为什么你必须为自己选择正确的方式


    祝你好运=D

    如果您已经在使用它,则可以将其保存在SQLlite DB中。如果数据不太多,并且你的应用程序在任何地方都不使用SQLlite,那么可能需要做很多工作,然后你也可以将其保存在SharedReference中。谢谢!我将使用SharedReferences。它看起来正是我所需要的。共享首选项用于存储少量数据,而SQLite数据库用于存储大量数据data@GorkemSahin我的荣幸。已添加注释作为要标记为完整的答案