将多个图像附加到邮件Composer

时间:2015-12-28 04:54:59

标签: android email uri email-attachments

如何将多个图像附加到邮件Composer。

 final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
 emailIntent.setType("*/*");
 ArrayList<Uri> uris = new ArrayList<Uri>();
            for (int i = 1; i < alBitmap.size(); i++) {
                strFile = strFile + "/" + i + ".jpg";
                File fileIn = new File(strFile);
                Uri u = Uri.fromFile(fileIn);
                uris.add(u);
            }
 emailIntent.putExtra(Intent.EXTRA_STREAM, uris);
 emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "");
 this.startActivity(Intent.createChooser(emailIntent, "Send mail..."));

但是,它给出了以下错误:

java.lang.ClassCastException: java.util.ArrayList cannot be cast to android.os.Parcelable.

有谁能告诉我解决方案是什么?我还使用了putArrayListExtra而不是putExtra。

2 个答案:

答案 0 :(得分:0)

使用ACTION_SEND_MULTIPLE。或者,更好的是,将为您创建共享意图的构建器:

答案 1 :(得分:0)

不确定您是否修复了问题,但是您已经关闭了。将emailIntent.putExtra更改为emailIntent.putParcelableArralyListExtra,并将其他所有内容保持不变。