2010-03-19 39 views
1

我知道以前有类似的问题。 我使用的是我在网上找到的同步演示应用程序here,它使用Picture Sharing作为指南。如何通过bonjour同步iPhone和Mac CoreData对象?

我已经将它集成到了我的桌面和iphone应用程序中,并且连接正常,但对于如何实际同步我的对象却一无所知。

它是那样简单

if ([iphone Object] != [desktop object]) 
{ 
//What goes here? 
} 

我已经使用了完全相同的对象模型,我基本上只是想知道如何检查是否有差异,并复制不同了的人。

任何人都知道任何示例代码将显示此?

非常感谢。

回答

0

您可以使用时间戳列(例如 - revisionTimestamp)解决此问题,该列可用作简单比较,并允许您确定最新更新。

只要确保您的保存逻辑在更新完成后自动更新列。

+0

感谢您的意见。我想我必须使用timeStamp来解决每个编辑时间。 我问的是,如何实际上将对象从iPhone复制到桌面,反之亦然? – monotreme 2010-03-19 07:00:19

2

您是否试用过Marcus Zarra的ZSync?它是使用Bonjour在Mac,iPhone等之间进行核心数据同步的开源实现。

+0

它看起来不像已经在一段时间内更新。这些样本过去在SDK 3下工作,但我还没有让它们在SDK 4中工作,所以我回到了原来的样子。 – monotreme 2010-12-06 13:04:10

+0

@monotreme - 我不确定你在说什么。 Github项目在过去几个月里展示了活动,刚刚从存储库下载的示例应用程序编译完成,并且刚刚在4.2模拟器中运行良好。 – 2010-12-06 15:25:11

+0

呵呵,我昨天刚刚运行它,它注册得很好,但是当我去同步或取消注册我的设备时,它总是崩溃。我可能做错了什么? – monotreme 2010-12-06 22:27:24