斯威夫特抓住"我的卡"CNContact

Kev*_*ann 5 macos swift swift2 cncontact

我似乎无法弄清楚如何从联系人那里获取用户"我的卡".我正在使用swift开发本机Mac应用程序.

Mic*_*ann 0

它不是来自(MacOS 10.11 中的全新)CNContact,但 MacOS 的ABAddressBook 框架有一个名为 的方法me(),该方法将返回登录用户的 ABPerson 记录。

要获得等效的 vCard,vCardRepresentation()调用该 ABPerson 对象

上述解决方案的好处是它可以在较旧的 MacOS 版本上运行(例如 MacOS 10.9、10.10)。

Marek 指出了unifiedMeContactWithKeysToFetch:CNContactStore 中的 API,但在我输入此答案时,它仅记录在 SDK 的 .h 头文件中,而不记录在CNContactStore 文档中。