android - 使用电子邮件发送文本文件附件

标签 android email attachment

我正在尝试附加一个文本文件,以便通过电子邮件发送它 但是每当我打开电子邮件应用程序时,它都会说该文件不存在请帮助

Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_EMAIL  , new String[]{"musabyahya1005@gmail.com"});
i.putExtra(Intent.EXTRA_SUBJECT, "subject of email");
i.putExtra(Intent.EXTRA_TEXT   , "body of email");
i.putExtra(Intent.EXTRA_STREAM, Uri.parse(directory+"/data.txt"));

try {
     startActivity(Intent.createChooser(i, "Send mail..."));
} catch (android.content.ActivityNotFoundException ex) {
     Toast.makeText(getBaseContext(), "An Error Happened ", Toast.LENGTH_SHORT).show();
}

最佳答案

如果您尝试通过电子邮件发送文件,请确保它们位于可公开访问的位置,并且您告诉它这是您要发送的文件。使用此代码作为示例。

Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("message/rfc822").putExtra(Intent.EXTRA_EMAIL, new String[]{"fake@example.com"}).putExtra(android.content.Intent.EXTRA_SUBJECT, "Mail subject").putExtra(android.content.Intent.EXTRA_TEXT, "lalalala");
String targetFilePath = Environment.getExternalStorageDirectory().getPath() + File.separator + "tmp" + File.separator + "test.txt";
Uri attachmentUri = Uri.parse(targetFilePath);
emailIntent.putExtra(android.content.Intent.EXTRA_STREAM, Uri.parse("file://" + attachmentUri)); 

关于android - 使用电子邮件发送文本文件附件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30016888/

相关文章:

eclipse - JAR 文件 C :\. ..Tomcat-8.0\lib\servlet-api.jar 没有源码附件

android - 在 Android Studio 中构建成功,但使用 'gradlew build' 构建失败并出现 NullPointerException

java - 对如何在类图中表示这些项目感到困惑

Android - 是否安装了 opencv 管理器和 OpenCV 二进制包

Android:正确下载/保存电子邮件附件

c++ - Outlook 2010 C++ 加载项 - HTML 电子邮件正文检索

android - 如何将资源文件添加到我的 phonegap 项目

python - 从电子邮件收件箱中提取 URL

emacs - 如何在 emacs org-mode 中将函数限制为子树?

Java(Web 服务 - SOAP)- 如何在客户端添加 SOAP 处理程序并正确启用 MTOM?