将电子邮件发送到Android多个地址

时间:2012-03-15 09:23:55

标签: android email-address

我想选择一些电子邮件地址,然后向所有人发送电子邮件。

我的代码如下:

emailIntent .putExtra(android.content.Intent.EXTRA_EMAIL,new String[]{listofemailaddresses});
emailIntent .putExtra(android.content.Intent.EXTRA_SUBJECT, "My Subject");
emailIntent .putExtra(android.content.Intent.EXTRA_TEXT, Constants.SMS_MESSAGE);
this.startActivity(Intent.createChooser(emailIntent, "Send mail..."));`

listofemailaddresses是一个字符串,其中包含以“,”符号分隔的所有电子邮件。但是To字段在这里总是空的。

3 个答案:

答案 0 :(得分:7)

将此行添加到您的代码中:

emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL,
            new String[] { "appsupport@YOUR_DOMAIN.com" });

这将填满屏幕的“收件人”部分。

答案 1 :(得分:6)

如果您有,分隔的电子邮件地址列表,则将该字符串拆分以获取单个电子邮件ID,如下所示:
String [] emailList = emailAddresses.split(",");
现在使用 emailList Intent.EXTRA_EMAIL密钥,因为这将显示发送电子邮件表单字段内的所有电子邮件地址。

这段代码怎么样:

final Intent emailLauncher = new Intent(Intent.ACTION_SEND_MULTIPLE);
emailLauncher.setType("message/rfc822");
emailLauncher.putExtra(Intent.EXTRA_EMAIL, emailList);
emailLauncher.putExtra(Intent.EXTRA_SUBJECT, "check this subject line");
emailLauncher.putExtra(Intent.EXTRA_TEXT, "hey check this message body!");
try{
       startActivity(emailLauncher);
}catch(ActivityNotFoundException e){

}

答案 2 :(得分:2)

Intent intent = null;
intent = new Intent(Intent.ACTION_SEND);
intent.setType("plain/text");
intent.putExtra(Intent.EXTRA_EMAIL,new String[] { "abc@gmail.com" , "test@gmail.com", "xyz@test.com"});
startActivity(intent);