如何将vcard从qr代码保存到联系人

时间:2016-01-12 10:34:12

标签: android qr-code zxing vcard

如果qr code包含v卡,我需要保存到联系人。我试图用this库来做这件事,但我无法读取v卡信息,我不知道使用哪种方法。我看过很多其他类似的帖子,但不幸的是那些不能救我。我正在使用zxing library来阅读qr代码。

1 个答案:

答案 0 :(得分:4)

vCard实际上有点冗长。您可以改用MECARD format

在这里,您可以看到ZXing Wiki

中的示例字符串
MECARD:N:Owen,Sean;ADR:76 9th Avenue, 4th Floor, New York, NY 10011;TEL:12125551212;EMAIL:srowen@example.com;;

现在对于vCard格式,我可以看到ZXing javadoc中有一个名为VCardResultParser的类,显然它支持vCard v2.1。我做了一个小例子,从wikipedia page for vCard中的示例中删除了一些字段:

BEGIN:VCARD
VERSION:2.1
N:Gump;Forrest
ORG:Bubba Gump Shrimp Co.
TEL;WORK;VOICE:555
ADR;HOME:;;42 Plantation St.;Baytown;LA;30314;USA
EMAIL;PREF;INTERNET:forrestgump@example.com
END:VCARD

在这两种情况下,您只需将字段序列化为纯文本字符串,然后像往常一样将其编码到QRCode上。我用三星手机测试了这两个例子,当你用ZXing扫描它们时,最左边的按钮允许你添加一个新的联系人。联系人应用程序打开,您按下" +"按钮和新联系人创建时填充了提供的字段。