Full tutorial is given below. Dear Viewer we are working hard to maintain this website. We doesn't want any think from you. Its just a humble request If you thinks that this posts helps you please share this post with your friends.
Send Email using Intent - Android Studio - Java
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:padding="10dp" tools:context=".MainActivity"> <!--EditText: Input the recipient--> <EditText android:id="@+id/recipientEt" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/white" android:hint="Recipient email(s)" android:inputType="textEmailAddress" android:padding="10dp" android:textColor="@color/black" /> <!--EditText: Input the subject of email--> <EditText android:id="@+id/subjectEt" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/white" android:hint="Subject" android:layout_marginTop="2dp" android:layout_marginBottom="2dp" android:inputType="text|textCapSentences" android:padding="10dp" android:textColor="@color/black" /> <!--EditText: Input the message--> <EditText android:id="@+id/messageEt" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/white" android:gravity="start" android:hint="Enter message here..." android:inputType="text|textCapSentences" android:minHeight="150dp" android:padding="10dp" android:textColor="@color/black" /> <!--Button: Launch existing email clients to send email--> <Button android:id="@+id/sendEmailBtn" style="@style/Base.Widget.AppCompat.Button.Colored" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="end" android:text="send Email" /> </LinearLayout>
MainActivity.java
package com.usmtip.myapplication; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends AppCompatActivity { //declare views EditText mRecipientEt, mSubjectEt, mMessageEt; Button mSendEmailBtn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //initializing views with activity_main.xml mRecipientEt = findViewById(R.id.recipientEt); mSubjectEt = findViewById(R.id.subjectEt); mMessageEt = findViewById(R.id.messageEt); mSendEmailBtn = findViewById(R.id.sendEmailBtn); //button click to get input and call sendEmail method mSendEmailBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //get input from EditTexts and save in variables String recipient = mRecipientEt.getText().toString().trim(); //trim will remove space before and after the text String subject = mSubjectEt.getText().toString().trim(); String message = mMessageEt.getText().toString().trim(); //method call for email intent with these inputs as parameters sendEmail(recipient, subject, message); } }); } private void sendEmail(String recipient, String subject, String message) { /*ACTION_SEND action to launch an email client installed on your Android device.*/ Intent mEmailIntent = new Intent(Intent.ACTION_SEND); /*To send an email you need to specify mailto: as URI using setData() method and data type will be to text/plain using setType() method*/ mEmailIntent.setData(Uri.parse("mailto:")); mEmailIntent.setType("text/plain"); // put recipient email in intent /* recipient is put as array because you may wanna send email to multiple emails so enter comma(,) separated emails, it will be stored in array*/ mEmailIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{recipient}); //put subject of email mEmailIntent.putExtra(Intent.EXTRA_SUBJECT, subject); //put message of email in intent mEmailIntent.putExtra(Intent.EXTRA_TEXT, message); try { //no error, so start intent startActivity(Intent.createChooser(mEmailIntent, "Choose an Email Client")); } catch (Exception e){ //if anything goes wrong e.g no internet or no email client lie gmail is available //get and show exception message Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show(); } } }
0 Comments: