Cómo enviar mensajes en WhatsApp en Android

Whatsapp es una de las aplicaciones de mensajería más populares. Muchas aplicaciones de Android necesitan la funcionalidad para compartir algunos mensajes directamente desde su aplicación a WhatsApp. Por ejemplo, si un usuario desea compartir la aplicación o compartir un mensaje de la aplicación, entonces se utiliza esta función. Cualquiera de los usuarios puede enviar un texto o también se puede enviar un texto predefinido a través de este. Este artículo demuestra cómo una aplicación de Android puede enviar mensajes en WhatsApp. Whatsapp debe estar instalado en el dispositivo del usuario.

Acercarse

Paso 1: abra el archivo activity_main.xml y agregue el código de diseño. Se agrega un contenedor de entrada de mensaje como EditText y un botón para enviar este mensaje.

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>

Paso 2: Tome la referencia de EditText y Button en el archivo Java. Las referencias se toman utilizando los identificadores con la ayuda del método findViewById().

  • Tomando referencia a EditText

    EditText mensajeEditText = findViewById(R.id.message);

  • Tomando como referencia el Botón

    Botón enviar = findViewById(R.id.submit);

Paso 3: Función de escritura para enviar mensajes a whatsapp. Cree una intención con ACTION_SEND y especifique el nombre del paquete de WhatsApp para que abra WhatsApp directamente.

com.whatsapp es el nombre del paquete para la aplicación oficial de WhatsApp.

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);
}

Paso 4: Configure onClickListener en el botón. Toma el texto ingresado por el usuario y llama a la función sendMessage en la que se envía el mensaje de texto como parámetro.

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);
        }
    });

A continuación se muestra el archivo MainActivity.java completo :

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);
    }
}

Producción:

Publicación traducida automáticamente

Artículo escrito por aman neekhara y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *