Home Tutorials How To Send Email in Android Using Intent

How To Send Email in Android Using Intent

We can easily send email in android via intent. You need to write a few lines of code only as given below

Intent email = new Intent(Intent.ACTION_SEND);  
email.putExtra(Intent.EXTRA_EMAIL, new String[]{ to});  
email.putExtra(Intent.EXTRA_SUBJECT, subject);  
email.putExtra(Intent.EXTRA_TEXT, message);  

//need this to prompts email client only  
email.setType("message/rfc822");  

startActivity(Intent.createChooser(email, "Choose an Email client :"));

activity_main.xml

In the activity_main.xml file, we are going to add 2 EditTexts, 1 MultiLine EditText, 3 TextViews, and 1 Button from the pallet, and create the layout for the given app. Now the activity_main.xml file will like this:

<RelativeLayout xmlns:androclass="http://schemas.android.com/apk/res/android"  
    xmlns:tools="http://schemas.android.com/tools"  
    android:layout_width="match_parent"  
    android:layout_height="match_parent"  
    tools:context=".MainActivity" >  

    <EditText  
        android:id="@+id/editText1"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_alignParentRight="true"  
        android:layout_alignParentTop="true"  
        android:layout_marginRight="22dp"  
        android:layout_marginTop="16dp"  
        android:ems="10" />  

    <EditText  
        android:id="@+id/editText2"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_alignLeft="@+id/editText1"  
        android:layout_below="@+id/editText1"  
        android:layout_marginTop="18dp"  
        android:ems="10" >  

        <requestFocus />  
    </EditText>  

    <EditText  
        android:id="@+id/editText3"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_alignLeft="@+id/editText2"  
        android:layout_below="@+id/editText2"  
        android:layout_marginTop="28dp"  
        android:ems="10"  
        android:inputType="textMultiLine" />  

    <TextView  
        android:id="@+id/textView1"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_alignBaseline="@+id/editText1"  
        android:layout_alignBottom="@+id/editText1"  
        android:layout_alignParentLeft="true"  
        android:text="To:" />  

    <TextView  
        android:id="@+id/textView2"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_alignBaseline="@+id/editText2"  
        android:layout_alignBottom="@+id/editText2"  
        android:layout_alignParentLeft="true"  
        android:text="Subject:" />  

    <TextView  
        android:id="@+id/textView3"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_alignBaseline="@+id/editText3"  
        android:layout_alignBottom="@+id/editText3"  
        android:layout_alignParentLeft="true"  
        android:text="Message:" />  

    <Button  
        android:id="@+id/button1"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_alignLeft="@+id/editText3"  
        android:layout_below="@+id/editText3"  
        android:layout_marginLeft="76dp"  
        android:layout_marginTop="20dp"  
        android:text="Send" />  

</RelativeLayout>

Activity class

Here we create the MainActivity.java file in which we import some android libraries into our code and link our previous layout code to MainActivity.java file So let’s write the code to send an email via intent.

MainActivity.java

package com.androidhire.sendemail;  

import android.os.Bundle;  
import android.app.Activity;  
import android.content.Intent;  
import android.view.Menu;  
import android.view.View;  
import android.view.View.OnClickListener;  
import android.widget.Button;  
import android.widget.EditText;  

public class MainActivity extends Activity {  
    EditText editTextTo,editTextSubject,editTextMessage;  
    Button send;  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_main);  

        editTextTo=(EditText)findViewById(R.id.editText1);  
        editTextSubject=(EditText)findViewById(R.id.editText2);  
        editTextMessage=(EditText)findViewById(R.id.editText3);  

        send=(Button)findViewById(R.id.button1);  

        send.setOnClickListener(new OnClickListener(){  

            @Override  
            public void onClick(View arg0) {  
                 String to=editTextTo.getText().toString();  
                 String subject=editTextSubject.getText().toString();  
                 String message=editTextMessage.getText().toString();  


                 Intent email = new Intent(Intent.ACTION_SEND);  
                  email.putExtra(Intent.EXTRA_EMAIL, new String[]{ to});  
                  email.putExtra(Intent.EXTRA_SUBJECT, subject);  
                  email.putExtra(Intent.EXTRA_TEXT, message);  

                  //need this to prompts email client only  
                  email.setType("message/rfc822");  

                  startActivity(Intent.createChooser(email, "Choose an Email client :"));  

            }  

        });  
    }  

    @Override  
    public boolean onCreateOptionsMenu(Menu menu) {  
        // Inflate the menu; this adds items to the action bar if it is present.  
        getMenuInflater().inflate(R.menu.activity_main, menu);  
        return true;  
    }  

}

Most Popular

OnePlus 7T vs iPhone 11 | Specs Comparison

The OnePlus 7T and iPhone 11 are the two best phones if you looking for a price of less than $1000. Both the phone...

Top 10 Gadgets Under 300 Rupees

Ever looked at those advertisements of tiny life simplifying gadgets online? Ever got tempted to buy one but resisted yourself because of their cost?...

How to deal 100 damage with pirate cannon in Fortnite

Fortnite is one of the popular games among gamers currently along with PUBG Mobile. After every specified duration, New seasons begin in each game...

Google Maps can now search for EV charging stations by plug

Google is on roll and now Google Maps has now the feature for searching for electric vehicle charging stations. Google Maps now features search for...