我正在开发一个 iOS 应用程序——它基本上是内容驱动的——它有分类信息。但是,是的,内容会经常更新——如果用户想现在或以后更新,则会收到警报提示。所以我需要的建议是:
内容由管理员管理,网络服务用 PHP 编写,后端是 MySQL。当用户下载应用程序时 - 整个数据库应该与应用程序一起安装还是应该只移动数据并将其存储在设备数据库中?
当内容有更新时 - 如何与设备同步?会有一个标志来检测最后一次更新吗?
对此的任何帮助将不胜感激
谢谢
1)由于更新后端数据库中的数据比在应用程序中更容易和更快(由于需要重新构建和重新提交应用程序,漫长的审批过程等),因此部署您的数据是有意义的具有使用适当数据模型(可能使用核心数据)的空数据库的应用程序。第一次运行时,您的应用程序可以从 Web 服务下载最新数据。
2) 您的应用可以在用户首选项中存储上次成功同步的时间戳,并将该值包含在其对 Web 服务的请求中,以便从服务中获取对数据的增量更新。
3) 如果您有大量数据,我建议您将 UI 设计为可以在数据到达时立即显示一些数据,同时显示一条清晰的消息,通知用户同步仍在进行中。这样用户可以很快开始与应用程序交互,但应用程序仍然可以在后台继续下载数据。
是的,这是个好主意。我使用以下过程:
1)第一次加载应用程序时下载数据库。
2) 使用修改后的时间戳存储每条记录。
3) 每次应用启动时,调用webservice,参数为最新时间戳。
如果任何记录已被修改或插入,它将被提供 web 服务。对于已删除的记录,每条记录都有一个删除标志。如果为真,则删除该记录。