The following code shows how to Use Intent to send email with attachment.
Main Activity Java code
//from ww w.j a v a 2 s .com import java.io.File; import java.util.ArrayList; import android.app.Activity; import android.app.SearchManager; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.os.Environment; import android.provider.Contacts; import android.view.Menu; public class MainActivity extends Activity { private Intent mailIntent; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mailIntent = new Intent(); mailIntent.setAction(Intent.ACTION_SEND); mailIntent.setType("message/rfc822"); mailIntent.putExtra(Intent.EXTRA_EMAIL, new String[] {"recipient@gmail.com"}); mailIntent.putExtra(Intent.EXTRA_CC, new String[] {"carbon@gmail.com"}); mailIntent.putExtra(Intent.EXTRA_BCC, new String[] {"blind@gmail.com"}); mailIntent.putExtra(Intent.EXTRA_SUBJECT, "Email Subject"); mailIntent.putExtra(Intent.EXTRA_TEXT, "Body Text"); mailIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(Environment.getExternalStorageDirectory(),"fileOne.txt"))); /*Block for sending multiple attachments mailIntent.setAction(Intent.ACTION_SEND_MULTIPLE); mailIntent.setType("message/rfc822"); mailIntent.putExtra(Intent.EXTRA_EMAIL, new String[] {"recipient@gmail.com"}); mailIntent.putExtra(Intent.EXTRA_CC, new String[] {"carbon@gmail.com"}); mailIntent.putExtra(Intent.EXTRA_BCC, new String[] {"blind@gmail.com"}); mailIntent.putExtra(Intent.EXTRA_SUBJECT, "Email Subject"); mailIntent.putExtra(Intent.EXTRA_TEXT, "Body Text"); ArrayList<Uri> files = new ArrayList<Uri>(); files.add(Uri.fromFile(new File(Environment.getExternalStorageDirectory(),"fileOne.txt"))); files.add(Uri.fromFile(new File(Environment.getExternalStorageDirectory(),"fileTwo.txt"))); //... mailIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, files); */ } @Override public boolean onCreateOptionsMenu(Menu menu) { menu.add("Mail").setIntent(Intent.createChooser(mailIntent, "Mail Client")); return true; } }