Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Social sharing on mobile

On a website, one can use a social sharing javascript library like addthis in order to propose share buttons to the user without having to program everything from scratch.

Do you know any library doing the same sort of thing directly inside an android application ?

like image 378
Joel Avatar asked Dec 16 '22 10:12

Joel


2 Answers

pathToPicture in previous answer is vague. It should be an Uri. See Android docs

More elaborate example:

String path = "/mnt/sdcard/dir1/sample_1.jpg";
Intent share = new Intent(Intent.ACTION_SEND);
    MimeTypeMap map = MimeTypeMap.getSingleton(); //mapping from extension to mimetype
    String ext = path.substring(path.lastIndexOf('.') + 1);
    String mime = map.getMimeTypeFromExtension(ext);
    share.setType(mime); // might be text, sound, whatever
    Uri uri = Uri.fromFile(new File(path));
    share.putExtra(Intent.EXTRA_STREAM,uri);//using a string here didnt work for me
    Log.d(TAG, "share " + uri + " ext:" + ext + " mime:" + mime);
    startActivity(Intent.createChooser(share, "share"));
like image 80
Nino van Hooff Avatar answered Jan 11 '23 12:01

Nino van Hooff


On Android we have Intents for this. If you like to give the user an opportunity to share something, you can fire up an intent like this for example:

Intent share = new Intent(Intent.ACTION_SEND);
share.setType("image/jpeg") // might be text, sound, whatever
share.putExtra(Intent.EXTRA_STREAM, pathToPicture);
startActivity(Intent.createChooser(share, "share"));
like image 44
NewProggie Avatar answered Jan 11 '23 10:01

NewProggie