在iOS 5及更高版本中,Apple推出了ABPersonCreatePeopleInSourceWithVCardRepresentation方法,这对于将地址簿中的vCard加载到回收创建的人员的ABRecordRefs中非常有用.
但是,如同在尝试向通讯簿添加标准vCard时所发现的,苹果vCard似乎(至少有一点)与标准vCard不同.有没有一个页面在某处详细说明vCard的Apple格式应该是什么?@H_502_3@
谢谢!@H_502_3@
解决方法
ABPersonCreatePeopleInSourceWithVCardRepresentation docs声明
vCard version 3 is the supported protocol.不幸的是,如果你遇到一个标准vCard的麻烦,我不知道如何帮助 – 我做了一个很好的搜索(赏金是好的动机:P),并没有找到任何进一步的信息.
我没有我的iPhone在我的测试,但this guy声称已成功导入以下,v2.1 vCard在iPhone 4上使用QR扫描仪应用程序(可能正在使用有问题的API). The 3.0 spec is a superset of the 2.1 spec – 你能尝试这个vCard,让我知道,如果它的作品?@H_502_3@
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规格here和here.@H_502_3@
作为最后一个沟渠解决方案,有plenty of vCard parsers out there – 这是一个非常简单的协议.您可以选择任何一个(或自己写一个),并使用ABPersonCreatePeopleInSourceWithVCardRepresentation手动将联系人添加到通讯录.@H_502_3@