【发布时间】:2019-06-09 18:11:21
【问题描述】:
我正在开发一个闪存卡类型的应用程序。数据是一个字典数组,在应用启动时必须存在,即使是第一次。
但是,随着时间的推移,应用程序中的数据将需要更新 - 现有记录将被修改或添加新记录。我有一个外部 python 脚本,它生成一个 JSON 文件并将其上传到我的 Web 服务器。我的应用需要该文件。
每次启动应用程序时,我的想法是检查网络服务器。如果那里的数据更新,那么我会下载它,保存并使用它。如果没有(或无法访问网络服务器),我将使用应用中已有的数据,这些数据可能是初始数据或之前下载并保存的更新数据。
所以我的问题是:
我在哪里存储初始数据以及我最终将下载的数据存储在哪里?为了避免浪费空间,我宁愿不包含一个读取一次且只读取一次的 JSON 文件,然后保存到 UserDefaults 并不再引用。
有没有办法使用预先存在的 UserDefaults 启动应用程序? (似乎不太可能。)如果我在我的应用程序中包含一个 JSON 文件,我可以用我下载的新文件替换文件的内容吗?还是我需要使用 Core Data?
【问题讨论】:
标签: json swift xcode core-data userdefaults