
We have seen how to share Text Message to WhatsApp Application from your App, similarly, we can also send Image contents with text caption to WhatsApp using Intents.
You need a URI variable that holds the image reference from your application or location on External or Internal storage and adds the following lines to the Intent Object.
intent.putExtra(Intent.EXTRA_STREAM,uri);
intent.setType("image/jpeg");
Let's create an Android Application with an Activity screen containing an EditText to hold the caption message and Button to call the send Intent Object.
Layout file
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.code2care.example.whatsappintegrationexample.MainActivity"
tools:ignore="HardcodedText" > android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="21dp"
android:onClick="sendMessae"
android:text="Send Image to WhatsApp" />
android:id="@+id/imageToBeShared"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="21dp"
android:src="@drawable/mona" />
android:id="@+id/caption"
android:layout_width="fill_parent"
android:layout_height="100dp"
android:layout_alignParentRight="true"
android:layout_below="@+id/imageToBeShared"
android:layout_marginTop="64dp"
android:background="#FFFFFFEF"
android:ems="10"
android:hint="Image Caption message text!!"
android:padding="10dp" />
Activity Java file :
package com.code2care.example.whatsappintegrationexample;
import java.io.FileNotFoundException;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.widget.EditText;
public class MainActivity extends ActionBarActivity {
private EditText message;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Caption for the image!
message = (EditText) findViewById(R.id.caption);
}
public void sendMessae(View v) throws FileNotFoundException {
String whatsAppMessage = message.getText().toString();
//You can read the image from external drove too
Uri uri = Uri.parse("android.resource://com.code2care.example.whatsappintegrationexample/drawable/mona");
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND);
intent.putExtra(Intent.EXTRA_TEXT, whatsAppMessage);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_STREAM,uri);
intent.setType("image/jpeg");
intent.setPackage("com.whatsapp");
startActivity(intent);
}
}
Result :
Now when you run this App and Add a text to Caption Box and click "Send to WhatsApp" button, WhatsApp app will pop up and ask to Select a Contact, when you select one, you see the image with Caption text added to it.

- Officially Send WhatsApp message using webpage (html)
- Share Multiple Images in WhatsApp using Android Intent
- How to Install WhatsApp application on Mac
- How to resolve Certificate Expired WhatsApp Error
- How to send WhatsApp message from your Android App using Intent
- [Solution] Installing Whatsapp There's insufficient space on the device
- WhatsApp launches WhatsApp Web to Access Messages over web browser
- How to know if someone has read your WhatsApp message
- Share Image to WhatsApp with Caption from your Android App
- WhatsApp Web escanner
- Can we move apps like WhatsApp, Facebook to external MicroSD card
- Error: Safari quit unexpectedly. Problem Report for Safari - MacOS
- Run IntelliJ Java main method without Gradle build - Gradle
- Android Constant and Resource Type Mismatches Lint - Android
- java.lang.ClassNotFoundException android.support.v7.widget.Toolbar [Fix] - Android
- Convert Collection List to Set using Java 8 Stream API - Java
- How to turn off Dark theme in Excel for Mac - Microsoft
- sudo is not recognized as an internal or external command - Windows
- Calculate Area of Parallelogram - C-Program