SoH
SoH

Reputation: 2190

Send Email to Multiple Addresses Android

I want to select a number of email addresses and then send an email to all of them.

My code is as below:

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 is a string which contains all the emails separated by a ',' sign. But the To field is always empty in this.

Upvotes: 7

Views: 9390

Answers (3)

Jameer Mulani
Jameer Mulani

Reputation: 2303

If you having the list of email addresses seprated by , then split that string to get individual email id as follow:
String [] emailList = emailAddresses.split(",");
now use emailList with your Intent.EXTRA_EMAIL key,as this will show all email addresses inside to field of send email form.

How about this code:

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){

}

Upvotes: 6

akkilis
akkilis

Reputation: 1934

Add this line to your code:

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

This will fill the "To" section of your screen.

Upvotes: 7

Bhavesh Vadalia
Bhavesh Vadalia

Reputation: 369

Intent intent = null;
intent = new Intent(Intent.ACTION_SEND);
intent.setType("plain/text");
intent.putExtra(Intent.EXTRA_EMAIL,new String[] { "[email protected]" , "[email protected]", "[email protected]"});
startActivity(intent);

Upvotes: 3

Related Questions