通过Whatsapp或邮件编程发送VCard文件/字符串

时间:2013-02-18 17:55:35

标签: android vcard whatsapp

我正在尝试通过Intents选择应用程序从字符串或文件发送VCard,例如Whatsapp。你有什么想法吗?

由于

编辑:

我试过这段代码。还有set type text / plain。 vcard变量是带有VCard的String。

Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setType("text/x-vcard");
intent.putExtra(android.content.Intent.EXTRA_STREAM, vcard);
intent.setPackage(packageName);

如果我发送给Whatsapp,我必须像字符串一样发送vcard但不能识别卡片

2 个答案:

答案 0 :(得分:0)

尝试使用EXTRA_TEXT代替EXTRA_STREAM,因为EXTRA_STREAM应该指向一个文件。

另外,请删除setPackage()电话。您并不比您的用户更重要。因此,您的用户可以控制他们与您分享他们的vCard的应用程序,而不是您。

除此之外,请联系Whatsapp以获取有关其应用的帮助。特别是在您setPackage()来电时,Whatsapp完全有可能不会通过ACTION_SEND支持vCard。

答案 1 :(得分:0)

试试这个:

intentShareFile.setDataAndType(Uri.fromFile(vcfFile),"text/x-vcard");
intentShareFile.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://"+vcfFile));

而不是:

intent.setType("text/x-vcard");