5

I'm using an Intent with ACTION_SEND and I need to share different texts. I need to send a text for Gmail and I need to send other text for twitter. depends on the application. Can I get the application selected by the user before the application sends the text shared?

Alex
  • 6,787
  • 11
  • 41
  • 48

3 Answers3

4

Yes, you can get the application selected by the user before the application sends the text shared. For this you have to make a workaround, i.e.:

You have to get list of which applications are supported for this intent by:

Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
List activities = getPackageManager().queryIntentActivities(sharingIntent,0);

By getting the list. we can built a alert dialog and then make listener for different applications.

Tim Cooper
  • 151,519
  • 37
  • 317
  • 271
3

In general you can't be sure which application will receive your ACTION_SEND intent.

This answer explains why you probably shouldn't do customization based on predicting which application the user will end up in.

This answer explains a workaround for TwiDroyd, which you probably shouldn't use but may help you in the short term.

Community
  • 1
  • 1
Matthew Willis
  • 44,487
  • 10
  • 97
  • 87
0

I don't have idea of getting the user selected application to send something.

But you can choose programatically the apk to open your intent using an IntentResolver.

Marcos Vasconcelos
  • 18,038
  • 29
  • 106
  • 167