如何将电子名片从二维码保存到联系人

How to save vcard from qr code to contacts

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

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 格式,我可以看到有一个名为 VCardResultParser in the ZXing javadoc, and apparently it supports vCard v2.1. I made this small example stripping down some fields from the example in the wikipedia page for vCard:

的 class
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。我用三星 phone 测试了这两个例子,当你用 ZXing 扫描它们时,最左边的按钮允许你添加一个新的联系人。联系人应用程序打开,您按下“+”按钮并创建一个新的联系人,并填写提供的字段。