时间:2010-07-25 02:22:43

标签: macos core-data synchronization cloud ios

5 个答案:

答案 0 :(得分:14)

答案 1 :(得分:1)

认真看看RestKit

这是一个开源项目,旨在帮助将iOS应用程序与云数据集成,包括但不限于客户端上存在针对该数据的核心数据模型的场景。

我最近开始在我的一个项目中使用它,并发现它非常有用。在核心数据场景中,您实现了数据模型与您从内容中获取的内容和POST到服务器之间的声明性映射,并且它处理诸如将对象从云注入到客户端模型,将新对象发布到服务器之类的事情。并将服务器生成的对象ID合并到客户端模型中,在后台线程中完成所有这些操作并处理所有核心数据上下文线程问题等。

RestKit绝不是一个成熟的产品,但它有一个相当好的基础和很多可以使用其他贡献者帮助的东西。特别是,如果你的目标是创建一个开源解决方案,那么贡献和改进这样的东西会很好,而不是重新发明一个新的解决方案。当然,除非您认为自己的想法与其他现有解决方案之间存在严重差异: - )

答案 2 :(得分:1)

由于此帖是最新的,因此有几个新选项可用。可以开发解决方案,并且有些应用程序随附这些解决方案。

以下是主要核心数据同步选项的简短列表:

  1. Apple的原生Core Data / iCloud同步。 (开局不顺。现在看起来好多了。)
  2. TICDS
  3. Wasabi Sync,付费服务。
  4. Simperium(似乎已放弃。)
  5. ParcelKit使用Dropbox Datastore API
  6. Ensembles,最近的。 (披露:我是该项目的创始人)

答案 3 :(得分:0)

这就像Apple通过iCloud SDKs的公告回答了我的问题,该公告完成了Core Data集成。赢了!

答案 4 :(得分:0)

您可能想看一些可行的云同步开源示例:

https://github.com/AtakamaLLC/cloudsync

https://github.com/cjnaz/RCloneSync

我可以想象,最好的办法就是从那里开始,并适应您的需求。

特别是$array_final = array(); $counter = 1; function get_previuos_levels($first_available_place_x, $first_available_place_y, $array_final , $counter) { $new_x = $first_available_place_x-1; $devider = $first_available_place_y/3; $new_y = ceil($devider); //echo $new_x; //echo '<br>'; //echo $new_y; if($new_x > 1) { $array_final['value'][$counter] = $new_x . ' - ' . $new_y; $counter++; get_previuos_levels($new_x, $new_y, $array_final , $counter); } return $array_final; } $result = get_previuos_levels(3, 5, $array_final , $counter); echo '<pre>'; print_r($result ); echo '</pre>'; 可以用作命令行应用程序来处理一些基本同步。