How to Share Entire Android App with Share Intent

AndroidAndroid IntentSharing

Android Problem Overview


I have used Sharing-type intents before, such as:

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("plain/text");
intent.putExtra(Intent.EXTRA_EMAIL,	new String[] { "---" });
intent.putExtra(Intent.EXTRA_SUBJECT, "---");
startActivity(Intent.createChooser(intent, "Contact Us!"));

However, this basically shares with Email/MMS and other text or document type apps. How do you do this same things but include Social sharing like Facebook, Twitter and Google Plus (to name the important ones). And WHAT I want to share is the app, where the text says, "hey download this link to check out the app!" (or something similar along those lines).

Android Solutions


Solution 1 - Android

To add the Facebook, Twitter etc. share options, the user just needs to have those applications installed. It's up to other applications what type of Intents they will tell the system they can handle.

Then a basic ACTION_SEND intent will get picked up.

Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT,
    "Hey check out my app at: https://play.google.com/store/apps/details?id=" + BuildConfig.APPLICATION_ID);
sendIntent.setType("text/plain");
startActivity(sendIntent);

Source

Solution 2 - Android

If you apply this code then it looks like the image below

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_SUBJECT, "My application name");
intent.putExtra(Intent.EXTRA_TEXT, "This is my text");
startActivity(Intent.createChooser(intent, "choose one"));

enter image description here

=====================================================================

If you apply this code then it looks like the image below

Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.setType("text/plain");
sendIntent.putExtra(Intent.EXTRA_TEXT, "This is my text to send.");
startActivity(sendIntent);

enter image description here

Solution 3 - Android

You can do that by using a sharing intent

			Intent shareIntent = new Intent(Intent.ACTION_SEND);
			shareIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
			shareIntent.setType("text/plain");
			shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Hey, download this app!");
			startActivity(shareIntent);		

you can put this intent in an onclick or use it whereever you want

I think this answers your question =)

Solution 4 - Android

In Kotlin we can do:

 private fun share(messageToShare: String, appUrl: String) {
    val intent = Intent(Intent.ACTION_SEND)
    intent.type = "text/plain"
    intent.putExtra(Intent.EXTRA_TEXT, messageToShare + appUrl)
    startActivity(Intent(intent))
}

Solution 5 - Android

Share the link to google play in the Intent.EXTRA_TEXT extra

Solution 6 - Android

You can also add the title, subject, and body while sharing app:

Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
                sharingIntent.setType("text/plain");
                sharingIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "My App Name");
                sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, getResources().getString(R.string.share_app_text));
                startActivity(Intent.createChooser(sharingIntent, "Share app via"));

Solution 7 - Android

> try this its working fine for me :

 Intent intent = new Intent();
    intent.setAction(Intent.ACTION_SEND);
    intent.putExtra(Intent.EXTRA_TEXT,"I suggest this app for you : https://play.google.com/store/apps/details?id=com.android.chrome");
    intent.setType("text/plain");
    startActivity(intent);

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionTheLettuceMasterView Question on Stackoverflow
Solution 1 - AndroidataulmView Answer on Stackoverflow
Solution 2 - AndroidPrince DholakiyaView Answer on Stackoverflow
Solution 3 - Androiduser1914029View Answer on Stackoverflow
Solution 4 - AndroidMahenView Answer on Stackoverflow
Solution 5 - AndroidiagreenView Answer on Stackoverflow
Solution 6 - AndroidShailendra MaddaView Answer on Stackoverflow
Solution 7 - Androiduser7616371View Answer on Stackoverflow