Objective c 既然同步服务已经过时,那么';在OSX上同步联系人的可靠替代方案是什么?

Objective c 既然同步服务已经过时,那么';在OSX上同步联系人的可靠替代方案是什么?,objective-c,macos,cocoa,contacts,syncservices,Objective C,Macos,Cocoa,Contacts,Syncservices,自OSX Lion以来,同步服务不再更新。也许很快他们就不在了。为了同步联系人,现在可以使用哪些替代方案 编辑-更多说明:我想问的是构建一个能够连接到同步服务器(使用SyncML)的同步应用程序。此同步应用程序(客户端)将安装在OSX系统上,负责查看客户端上哪些联系人已更改(从而通知服务器),并将更改从服务器应用到客户端 到目前为止,我们一直在使用同步服务来跟踪更改并将联系人同步到一个集中的地点,但由于SS已经过时,我们正在寻找替代方案。希望添加的内容有帮助。我不太确定您在这里想要什么。例如,是

自OSX Lion以来,同步服务不再更新。也许很快他们就不在了。为了同步联系人,现在可以使用哪些替代方案

编辑-更多说明:我想问的是构建一个能够连接到同步服务器(使用SyncML)的同步应用程序。此同步应用程序(客户端)将安装在OSX系统上,负责查看客户端上哪些联系人已更改(从而通知服务器),并将更改从服务器应用到客户端


到目前为止,我们一直在使用同步服务来跟踪更改并将联系人同步到一个集中的地点,但由于SS已经过时,我们正在寻找替代方案。希望添加的内容有帮助。

我不太确定您在这里想要什么。例如,是否要编辑系统范围通讯簿中的联系人,并将这些编辑传播到其他设备?如果是,请使用,并将传播留给iCloud的通讯簿支持


是否要存储(联系)应用程序特有的数据并将其传播到其他设备?当然,这听起来也是你想要的。的确,iCloud没有一个API可以让你“跟踪变化”。但是如果这对你很重要,为什么不把它包含在iCloud传播的数据中呢?还是我误解了你所说的“跟踪变化”?你是说除了iCloud之外?或者你指的是什么样的同步?也就是说,哪个设备到哪个设备?是的,我的意思是除了iCloud之外,因为AFAIK iCloud没有API,您可以登录并跟踪更改。我的意思是你有自己的应用程序可以从OSX同步联系人(对联系人执行CRUD操作)。从任何OSX设备到任何其他设备(但这可以通过SyncML之类的同步协议来解决,因此这超出了本问题的范围)。通过第三方API进行同步怎么样?比如:DropBox。谢谢你的回答。我扩展了我的问题,让你更好地了解我的目标。谢谢!这要清楚得多。所以你要找的是一种收到地址簿修改通知的方法,是吗?考虑到我可以在聚光灯下搜索地址信息,似乎地址的变化必须以某种方式联系在一起。似乎更明智的处理方法是直接利用Spotlight,但我对Spotlight不太了解,无法对此发表评论。不确定它在《山狮》中的表现如何,但到目前为止,通讯录有自己的文件夹。每当联系人发生更改时,该文件夹也会发生更改,并且会有一个文件系统事件触发该文件夹上的更改(如果已向其注册)。然而,这种方法似乎仍然有点。。。片状的?粗俗的?我想知道是否有更好的方法…感谢您的输入,通讯簿框架似乎还提供了一些通知字符串:
kABDatabaseChangedNotification
kabdatabasechangedternallynotification
,它们可能用于侦听通讯簿的更改,不依赖于文件系统事件。