导出和导入Vcard

时间:2011-08-07 07:36:53

标签: php iphone android mobile gmail

我想允许用户将他们的联系人(电子邮件)导入我的php应用程序。我正在考虑vcard格式,因为大多数手机允许vcard导出。现在我有一些疑问

  1. iphone,android,blackberry,symbian是否允许导出为vcard,并且所有人都是相同的vcard格式。

  2. 此外,您可以导出Gmail联系人vcard也采用相同的格式

  3. 您可以将苹果邮件,Outlook,雷鸟联系人导出为vcard

2 个答案:

答案 0 :(得分:2)

我认为如果他们遵守标准(不能确定不足以拥有所有这些设备),那么是的,他们应该输出相同的。

来自http://en.wikipedia.org/wiki/VCard

以下是包含一个人信息的VCard文件示例:

vCard 2.1:

BEGIN:VCARD
VERSION:2.1
N:Gump;Forrest
FN:Forrest Gump
ORG:Bubba Gump Shrimp Co.
TITLE:Shrimp Man
TEL;WORK;VOICE:(111) 555-1212
TEL;HOME;VOICE:(404) 555-1212
ADR;WORK:;;100 Waters Edge;Baytown;LA;30314;United States of America
LABEL;WORK;ENCODING=QUOTED-PRINTABLE:100 Waters Edge=0D=0ABaytown, LA 30314=0D=0AUnited States of America
ADR;HOME:;;42 Plantation St.;Baytown;LA;30314;United States of America
LABEL;HOME;ENCODING=QUOTED-PRINTABLE:42 Plantation St.=0D=0ABaytown, LA 30314=0D=0AUnited States of America
EMAIL;PREF;INTERNET:forrestgump@example.com
REV:20080424T195243Z
END:VCARD

vCard 3.0:

BEGIN:VCARD
VERSION:3.0
N:Gump;Forrest
FN:Forrest Gump
ORG:Bubba Gump Shrimp Co.
TITLE:Shrimp Man
PHOTO;VALUE=URL;TYPE=GIF:http://www.example.com/dir_photos/my_photo.gif
TEL;TYPE=WORK,VOICE:(111) 555-1212
TEL;TYPE=HOME,VOICE:(404) 555-1212
ADR;TYPE=WORK:;;100 Waters Edge;Baytown;LA;30314;United States of America
LABEL;TYPE=WORK:100 Waters Edge\nBaytown, LA 30314\nUnited States of America
ADR;TYPE=HOME:;;42 Plantation St.;Baytown;LA;30314;United States of America
LABEL;TYPE=HOME:42 Plantation St.\nBaytown, LA 30314\nUnited States of America
EMAIL;TYPE=PREF,INTERNET:forrestgump@example.com
REV:20080424T195243Z
END:VCARD

电子邮件客户端广泛支持vCard标准的2.1版。 vCard格式3.0版是RFC 2425RFC 2426中包含的IETF标准跟踪提案。

答案 1 :(得分:0)

iOS提供了在移动Safari中访问联系人数据库的任何机制。导出联系人的唯一方法是通过原生应用程序。

一种非常 kludgey方式,可以通过电子邮件从iOS导出一个联系人。 iOS允许用户非常轻松地将.vcard文件作为电子邮件附件发送。

工作流程可以像这样:

  1. 让用户选择通过电子邮件联系导出
  2. 为服务器上的用户生成唯一的电子邮件地址。 与flickr的电子邮件地址相似的东西 和其他人提供的东西一样 contacts-export+[unique string]@exmple.com
  3. 指示用户将所述电子邮件地址添加到iOS联系人数据库中 (点按并按住电子邮件地址 - > Create New Contact
  4. 指示用户打开“联系人”应用,找到他们希望导出的联系人以及每个联系人 选择Share Contact - > Email - >发送到以前保存的电子邮件地址
  5. 创建一个cron作业以定期检查和处理这些传入的消息
  6. 对于最终用户和开发人员来说,这似乎都是很多工作。话虽如此,如果您的用户足够精明,能够处理这种复杂的工作流程,那么对于一次性联系导出来说肯定比复制/粘贴更容易,特别是对于只有一个或两个相关字段的任何联系人。

    我不确定Android,Blackberry等人在出口方面的支持。