我想知道如何从Mac OS X上的另一个Cocoa应用程序访问Safari书签,以一种安全可靠的方式.
您可能知道,浏览Safari书签有两种常见的机制:
但是,第一个是沙盒禁止(通过App Store分发是强制性的),第二个是自Mac OS X 10.7 Lion以来不推荐使用的.
我相信Apple弃用了SyncServices而支持iCloud同步,但我找不到任何允许访问书签的iCloud API(1).
有什么暗示在哪里看?Native Cocoa是首选,但欢迎使用任何不推荐使用的沙盒兼容解决方案.
谢谢.
(1)并且,老实说,通过互联网(因此需要互联网连接)在机器上检索同一台机器上的东西似乎......尴尬 - 但是,如果它是至少那样的方式将是一个潜在可能.
从Sync Services获取修改后的联系人时,通过该applyChange:forEntityName:remappedRecordIdentifier:formattedRecord:error方法.地址簿中的ID属于表单2C13E20E-6B24-4090-81FA-7A1E8B28119B,即使ISyncChange*对象中存在某些此类ID,这些ID也不是可以在地址簿中找到的实际联系人ID ...
有没有办法从Sync Services中找出某个联系人ID在地址簿中的含义?
询问的原因是,在为地址簿中的联系人保存大图片时,同步服务不会将这些图片保存在其内部数据存储中.因此,已经修改或添加了大图片的联系人将在没有图片的情况下由Sync Services返回,基本上提供不完整的信息.
我需要获取地址簿ID,以便我可以查看联系人的图片 ~/Library/Application Support/Address Book/Images/
谢谢!
假设我已经有一个OS X应用程序,它使用Sync Services和MobileMe 同步其数据.有没有办法让我的iPhone/iPad应用程序使用我已经为同步服务准备的数据同步(使用MobileMe或不使用)数据?
我猜Apple已经在iOS中实现了,因为iPhone/iPad确实同步了Safari书签,但它似乎没有在SDK中提供......
我在我的应用程序中使用Sync Services.我正在使用通常的方式从地址簿中获取联系人(使用同步服务).
如果用户决定这样做,我想过早地结束同步会话,因此,当用户按下"取消"按钮时,我打电话给 [driver finishSyncing]
附属于ISyncSessionDriver代理,处理典型的同步会话的委托方法.其中一种方法是- (BOOL)sessionDriver:(ISyncSessionDriver *)sender willFinishSessionAndReturnError:(NSError **)outError
问题是,在呼叫时finishSyncing,sessionDriver:willFinishSessionAndReturnError:重复呼叫,不仅仅是一次,而是多次.最终它会抛出一个错误.
那么,我该如何解决这个问题,或者我可以做些什么更好的调试来弄清问题是什么?
谢谢
自OSX Lion以来,不再更新同步服务.也许很快它们就不会再存在了.为了同步联系人,现在可以使用哪些替代方案?
编辑 - 更多说明:我要求的上下文是构建一个能够连接到同步服务器的同步应用程序(使用SyncML).此同步应用程序(客户端)将安装在OSX系统上,负责查看客户端上的哪些联系人已更改(从而通知服务器),并将更改从服务器应用到客户端.
到目前为止,我们一直在使用Sync Services来跟踪更改并将联系人同步到集中点,但由于SS已经过时,我们正在寻找替代方案.希望加法有所帮助.
macos ×5
syncservices ×5
objective-c ×2
addressbook ×1
bookmarks ×1
cocoa ×1
contacts ×1
delegates ×1
icloud ×1
iphone ×1
mobileme ×1
safari ×1