在客户端应用程序中,本地存储管理和数据持久性的最佳做法是什么



我正在为Android和iOS平台的医疗web服务开发REST客户端。在阅读了不同的文章和博客文章后,我明白了我应该始终保持数据,以提高应用程序的速度、用户体验、节省网络资源,并允许用户离线处理一些数据。我决定使用基于Couchbase Lite的本地存储。但这个问题与数据存储无关。我对实现它的最佳方式很感兴趣。目前,我得到了下一个工作流:

  1. 当用户第一次登录时,我会获取一些最近的数据(在我的情况下,是患者的健康记录和一些报告)
  2. 然后在后台,我用剩下的数据填充我的存储
  3. 在推送通知上同步我的数据,以始终存储最后一个服务器数据副本。

    但我有几个问题:本地存储的正常大小是多少?可能会有一段时间,客户端数据会增加很多——在这种情况下,我会从设备中删除最旧的数据,以免超过一些预定义的限制?假设它是50-100 Mb。或者我应该允许用户控制这一点,并给他一些删除报告、记录的界面?我描述的工作流程正确吗?或者从技术和用户体验的角度来看可能是做错了什么

您应该考虑下载一个索引(资源的名称和位置,而不是实际的资源数据),它列出了所有可用的资源。显示列表,并指示每个项目是否在本地可用。选择后,显示(如果需要下载)。允许编辑以删除资源的本地副本(使用全选按钮)。

至于存储大小,这取决于设备。应用程序存储他们需要的数据。问题是用户会为你在本地保存多少数据而高兴。给他们选择权。您还可以有一个设置屏幕,当大小超过XXMb时,它可以删除旧资源(最近未访问)。

最新更新