【发布时间】:2012-05-08 07:53:43
【问题描述】:
我一直在开发 Android 程序,使用 Intent 和 Intent.ACTION_SEND 发送带有附件(文本/纯文本)的电子邮件我使用 Intent.putParcelableArrayListExtra(android.content.Intent.EXTRA_STREAM, uri) 但是,当我尝试将多个文件附加到同一封邮件时多次调用Intent.putExtra(android.content.Intent.EXTRA_STREAM, uri),它失败了。电子邮件中未显示任何附件。在此先感谢
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
System.out.println(emailText+emailTo);
emailIntent.setType("text/plain");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT,emailText);
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL,new String[]{emailTo});
//has to be an ArrayList
ArrayList<Uri> uris = new ArrayList<Uri>();
//convert from paths to Android friendly Parcelable Uri's
try
{
for (String file : filePaths)
{
File fileIn = new File(context.getFilesDir(),file);
System.out.println(fileIn+"yes");
Uri u = Uri.fromFile(fileIn);
uris.add(u);
System.out.println(u);
}
emailIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM,uris);
context.startActivity(Intent.createChooser(emailIntent, "Send mail..."));
}
【问题讨论】:
-
试试我以前的answer 这个问题。
-
你的答案和我的问题一样
-
您是否要在其中附加多个文件?
-
是的,正如我在上面的问题中提到的那样。
-
当我使用此代码时,会显示附件,但发送邮件后我没有收到任何附件。
标签: android android-intent email-attachments