And*_*rei 13 macos objective-c syncservices addressbook
从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/
谢谢!
依赖与 ~/Library/Application Support/Address Book/Images/ 中的图像相关的地址簿 ID 是一个坏主意 - 你最好找到一个为你提供你想要使用的数据的 API,因为您不能保证该图像当时或以后会在那里(升级后,这一切都可能会改变!)。
经过少量研究后,您想要的 api 似乎记录在此处:http://developer.apple.com/library/mac/#documentation/UserExperience/Conceptual/AddressBook/Tasks/AccessingData.html#//apple_ref /doc/uid/20001023-103617
这有点笨拙,因为您必须了解他们的 ABImageClient 协议并提供回调,但我认为这还不错。这种方法比您所做的要好得多 - 这是 Apple 批准的获取此数据的方法,您不必担心它将来会损坏。
| 归档时间: |
|
| 查看次数: |
1029 次 |
| 最近记录: |