【问题标题】:Correct vCard format for iOS devices?iOS 设备的 vCard 格式是否正确?
【发布时间】:2012-12-17 11:21:59
【问题描述】:

在 iOS 5 及更高版本中,Apple 引入了 ABPersonCreatePeopleInSourceWithVCardRepresentation 方法,该方法在将 vCard 输入地址簿并为创建的人员取回 ABRecordRefs 时非常有用。

但是,正如我在尝试将标准 vCard 添加到地址簿时发现的那样,Apple vCard 似乎(至少有点)不同于标准 vCard。是否有页面详细说明 vCard 的 Apple 格式应该是什么?

谢谢!

【问题讨论】:

  • 哪些 .vcf 文件对您有问题,即任何特定字段等?我目前唯一发现的是 vCard 文件大小应该小于 256Kb。
  • @NickolayO。主要是PHOTO 字段。似乎它需要 vcard 2.1 和 vcard 3.0 之间的格式组合。
  • 您能附上示例 vcard 文件吗? (PS.doc 说:地址簿支持 vCard 3.0 版。)
  • 正如@ahmet 所说 - 如果您可以附加您尝试过的 .vcf 文件会有所帮助:)

标签: objective-c ios abaddressbook


【解决方案1】:

ABPersonCreatePeopleInSourceWithVCardRepresentation 文档声明 vCard version 3 is the supported protocol。不幸的是,如果您在使用标准 vCard 时遇到问题,我不知道如何提供帮助 - 我进行了相当多的搜索(该赏金是很好的动力:P),但无法找到任何进一步的信息。

我没有要测试的 iPhone,但 this guy 声称已使用 QR 扫描仪应用在 iPhone 4 上成功导入了以下 v2.1 vCard(可能正在使用有问题的 API)。 The 3.0 spec is a superset of the 2.1 spec - 你可以试试这个 vCard 并告诉我它是否有效吗?

BEGIN:VCARD
VERSION:2.1
N:;Company Name
FN:Company Name
ORG:Company Name
TEL;WORK;VOICE;PREF:+16045551212
TEL;WORK;FAX:+16045551213
ADR;WORK;POSTAL;PARCEL;DOM;PREF:;;123 main street;vancouver;bc;v0v0v0;canada
EMAIL;INTERNET;PREF:user@example.com
URL;WORK;PREF:http://www.example.com/
NOTE:http://www.example.com/
CATEGORIES:BUSINESS,WORK
UID:A64440FC-6545-11E0-B7A1-3214E0D72085
REV:20110412165200
END:VCARD

您可以阅读官方 3.0 规范 herehere

作为最后的解决方案,有plenty of vCard parsers out there - 这是一个非常简单的协议。您可以使用其中任何一个(或自己写一个)并使用 ABPersonCreatePeopleInSourceWithVCardRepresentation 手动将联系人添加到地址簿。

【讨论】:

  • @aaronsnoswell,您知道与 vCard 4.0 有关的类似 Apple 文档吗?
  • CATEGORIES:BUSINESS,WORK不能序列化你有什么解决办法
【解决方案2】:

我创建了一个向后兼容的VCard class,它可以生成 .vcf 文件。但是对于

被成千上万的人使用!查看GitHub

【讨论】:

    【解决方案3】:

    从 iOS 9 / iPadOS 9 / watchOS 2.0 / macOS 10.11 开始,您应该使用 Contacts 框架而不是格式化程序类 CNContactVCardSerialization 记录在

    https://developer.apple.com/documentation/contacts/cncontactsuserdefaults

    很遗憾,我不再看到有关受支持的 vCard 版本的提及。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-29
      • 2023-04-10
      • 1970-01-01
      • 2019-07-19
      • 2011-03-18
      • 2020-11-02
      • 1970-01-01
      相关资源
      最近更新 更多