与networking服务器同步核心数据

我正在创build一个关于鸟的应用程序。 这个应用程序也应该在离线模式下工作。 所以我决定使用核心数据。 我计划有一个约700个logging的表。 所有的鸟类将以桌面视图显示。 工作stream程应该是这样的:

  1. 用户启动应用程序
  2. 请求在后台发送到服务器
  3. 响应被parsing
  4. 数据库被更新

我感兴趣什么是最好的方法来做到这一点。 我的观点是添加到“最后修改”字段的请求,这将减less数据库应该更新的次数。 我应该删除我的实体的所有实例,或循环他们逐一比较“最后修改”字段,然后更新/删除/插入? 有没有人做过时间分析? 当用户在已经删除旧实例并且没有插入新的时候用户打开屏幕时,他会看到一个空的表视图,如何处理这种情况,我需要一个tmp实体吗? 还有其他我错过的陷阱吗?

如果我理解了你的话,你可以在应用程序和服务器数据库中修改你的鸟,并且你想把最后一个改变保存并转移到另一端。 然后你可以在你的NSUserDefaults中使用Last sync这样的东西,并且在你发送一个请求到服务器的时候,你发送了你在上一次同步之后修改的所有入口(这是对核心数据的一个简单的请求),服务器也应该给你一个他上次同步后更新的鸟的列表,所以你可以在你的应用程序中更新它们,然后你更新你的LastSync值。

如果你只是总是从服务器获取所有更新的鸟,只需使用我的答案的第二部分。