【问题标题】:sync core data with web server将核心数据与 Web 服务器同步
【发布时间】:2012-04-16 15:20:47
【问题描述】:

我正在创建一个关于鸟类的应用程序。这个应用程序也应该在离线模式下工作。所以我决定使用Core Data。我计划有一个大约 700 条记录的表。所有的鸟都将显示在表格视图中。 工作流程应该是这样的:

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

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

【问题讨论】:

    标签: ios xcode web-services core-data


    【解决方案1】:
    【解决方案2】:

    如果我理解正确,您可以在应用程序和服务器数据库中修改您的鸟,并且您希望保存最后的更改并将其传输到另一端。然后你可以在你的NSUserDefaults中使用Last sync之类的东西,每次你向服务器发送请求时,你都会向他发送你上次同步后修改的所有实体(这是对核心数据的简单请求),并且服务器还应该给你一个他在你上次同步后更新的鸟的列表。所以你也可以在你的应用程序中更新它们。然后你更新你的 LastSync 值。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-16
      相关资源
      最近更新 更多