How to send message on WhatsApp in Android
Whatsapp is the one of most popular messaging App. Many android applications need the functionality to share some messages directly from their app to WhatsApp. For example, if a user wants to share the app or share a message from the app then this functionality comes in use. Either user can send a text or a predefined text can also be sent through this. This article demonstrates how an android application can send messages on WhatsApp. Whatsapp must be installed on the user’s device.
Approach
Step 1:Open the activity_main.xml file and add the layout code. A message input container as EditText and a Button to send this message is added.
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" tools:context = ".MainActivity" android:orientation = "vertical" > <!-- EditText to take message input from user--> < EditText android:id = "@+id/message" android:layout_width = "match_parent" android:layout_height = "wrap_content" android:layout_margin = "16dp" android:hint = "Enter you message here" android:lines = "8" android:inputType = "textMultiLine" android:gravity = "left|top" /> <!-- Button to send message on Whatsapp--> < Button android:id = "@+id/submit" android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_gravity = "center_horizontal" android:text = "Submit" android:background = "@color/colorPrimary" android:textColor = "@android:color/white" /> </ LinearLayout > |
Step 2: Take the reference of EditText and Button in Java file. References are taken using the ids with the help of findViewById() method.
- Taking reference to EditText
EditText messageEditText = findViewById(R.id.message);
- Taking reference to Button
Button submit = findViewById(R.id.submit);
Step 3: Write function to send message to whatsapp. Create an intent with ACTION_SEND and specify the whatsapp package name to this so that it opens whatsapp directly.
com.whatsapp is the package name for official whatsapp application.
private void sendMessage(String message) { // Creating new intent Intent intent = new Intent(Intent.ACTION_SEND); intent.setType( "text/plain" ); intent.setPackage( "com.whatsapp" ); // Give your message here intent.putExtra( Intent.EXTRA_TEXT, message); // Checking whether Whatsapp // is installed or not if (intent .resolveActivity( getPackageManager()) == null ) { Toast.makeText( this , "Please install whatsapp first." , Toast.LENGTH_SHORT) .show(); return ; } // Starting Whatsapp startActivity(intent); } |
Step 4: Set onClickListener to the button. It takes the text entered by the user and calls the function sendMessage in which the text message is sent as a parameter.
submit.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View view) { // Getting the text // from edit text String message = messageEditText .getText() .toString(); // Calling the function // to send message sendMessage(message); } }); |
Below is the complete MainActivity.java file:
MainActivity.java
package com.gfg; import androidx.appcompat .app.AppCompatActivity; import android.content.Intent; 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 { @Override protected void onCreate( Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Taking reference of Edit Text final EditText messageEditText = findViewById(R.id.message); // Taking reference to button Button submit = findViewById(R.id.submit); submit.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View view) { // Getting the text // from edit text String message = messageEditText .getText() .toString(); // Calling the function // to send message sendMessage(message); } }); } private void sendMessage(String message) { // Creating new intent Intent intent = new Intent( Intent.ACTION_SEND); intent.setType( "text/plain" ); intent.setPackage( "com.whatsapp" ); // Give your message here intent.putExtra( Intent.EXTRA_TEXT, message); // Checking whether Whatsapp // is installed or not if (intent .resolveActivity( getPackageManager()) == null ) { Toast.makeText( this , "Please install whatsapp first." , Toast.LENGTH_SHORT) .show(); return ; } // Starting Whatsapp startActivity(intent); } } |
Output:
Contact Us