我正在将 RestKit 用于 iOS To 应用程序。我已经使用restkit完成了以下操作:
1. 从rest api中以json格式拉取服务器对象。
2. 删除服务器上不再存在的核心数据中的孤立对象。
现在我必须构建以下场景,如果设备上可以使用互联网并且用户正在添加新数据项,那么我应该首先做什么,即我应该首先在本地存储新数据,然后发布到服务器还是首先发布将数据传输到服务器并将其拉回到设备上?
其次,如果设备上没有互联网,并且用户插入新数据项,然后在本地保存数据,在互联网可用性上,我如何将新添加的数据项发布到服务器,即我应该遵循什么方法,以及restkit是否可以帮助我解决这种情况?
RestKit 包括可达性监控(实际上是 AFNetworking 的一部分)。所以你可以设置一个块在状态改变时运行:
[objectManager.HTTPClient setReachabilityStatusChangeBlock:...
一般来说,在所有情况下都将项目存储在本地。将项目推送到服务器后,在项目上设置同步日期或标志以确认其已更新。
这实际上是一个更广泛的问题,涉及如何管理服务器的本地修改和更新。您可能需要一个总体方案来列出dirty
对象并将更新推送到服务器,并让服务器响应设置每个项目的同步时间。如果您使用 2 个日期(一个用于最后一次本地修改,一个用于远程同步),那么模型上的快速谓词获取将告诉您哪些对象是脏的并且需要推送到服务器。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)