Android 在WhatsApp中发送文档和文本
目前,我想发送应用程序生成的PDF或Excel文件从WhatsApp与文本。但打开聊天屏幕后,只有文件发送,而不是文本。 同样的代码适用于电子邮件客户端,其中文本作为正文添加Android 在WhatsApp中发送文档和文本,android,whatsapp,Android,Whatsapp,目前,我想发送应用程序生成的PDF或Excel文件从WhatsApp与文本。但打开聊天屏幕后,只有文件发送,而不是文本。 同样的代码适用于电子邮件客户端,其中文本作为正文添加 Intent intentShareFile = new Intent(Intent.ACTION_SEND); intentShareFile.putExtra(Intent.EXTRA_SUBJECT, "My Subject");//Only used if user selects
Intent intentShareFile = new Intent(Intent.ACTION_SEND);
intentShareFile.putExtra(Intent.EXTRA_SUBJECT,
"My Subject");//Only used if user selects email client
intentShareFile.putExtra(Intent.EXTRA_TEXT,
"Extra text");
if (isReportInPDF())
intentShareFile.setType("application/pdf");
else
intentShareFile.setType("application/vnd.ms-excel");
intentShareFile.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + url));
startActivity(Intent.createChooser(intentShareFile, "Share File"));
如果您同时提供这两种附加功能,则由消费应用程序决定
如何处理它们,并不是所有的应用程序都会同时使用它们
根据评论。不要求应用程序在同一个
ACTION\u SEND
Intent
中同时支持EXTRA\u TEXT
和EXTRA\u STREAM
,因此您所描述的内容符合ACTION\u SEND
的记录方式。请注意,文件:
Uri
值在Android 7.0+上被禁止;您应该得到一个FileUriExposedException
。请使用FileProvider
将您的流发布到其他应用程序。所以底线是我不能同时使用这两个应用程序。谢谢你在FileProvider上的注释,我也会这么看。“所以底线是我不能同时使用这两个”——我会用“你不能同时依赖这两个”来表达。如果你同时提供这两种附加功能,则应由消费应用程序决定如何使用它们,并且并非所有应用程序都会同时使用这两种功能,或者以符合你期望的方式使用它们。