Share or Send SMS via Android Intent


Below is an example of how you can share or send an SMS programmatically via an Android Intent,

  • Create an object on Intent object with Intent.ACTION_VIEW and Uri,
  • Using putExtra provide the sms body
  • Start the activity
Intent message = new Intent( Intent.ACTION_VIEW, Uri.parse( "sms:" + "" ) );
message.putExtra( "sms_body", "Put your SMS text here" );
startActivity(message);

Note: You would require to have permissions enabled to SEND SMS, this can be done by adding the below code in Manifest,

<uses-permission android:name="android.permission.SEND_SMS" />

If you want to sent an MMS you may have to use some more options,

public void sendSmsMessage(String sms, Uri attachment) {
    Intent smsIntent = new Intent(Intent.ACTION_SENDTO);
    msIntent.setType(HTTP.PLAIN_TEXT_TYPE);
    msIntent.putExtra("sms_body", "hey there, this is an test SMS");
    msIntent.putExtra(Intent.EXTRA_STREAM, attachment);
    startActivity(intent);
}

Actions can be among: ACTION_SENDTO, ACTION_SEND or ACTION_SEND_MULTIPLE

URI Schema's: sms:<phone_number>, smsto:<phone_number>, mms:<phone_number>, mmsto:<phone_number>

MIME Types could be like: "text/plain", "image/*", "video/*"




Recent Posts:




Code2care is an initiative to publish and share varied knowledge in programming and technical areas gathered during day-to-day learnings and development activities.

Students and Software Developers can leverage this portal to find solutions to their various queries without re-inventing the wheel by referring to our easy to understand posts. Technical posts might include Learnings, Video Tutorials, Code Snippets, How Tos, Blogs, Articles, etc.