Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

problem sending an email with an attachment programmatically

Tags:

android

i`m trying to send an email using native email client on android phone.

I have tried following ways to add an attachment to the mail...

method--1

Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.setType("image/jpeg");
sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://sdcard/abc.jpg"));

method 2

Sending the image as body content---

sendIntent.putExtra(Intent.EXTRA_TEXT, "<HTML><BODY><b><IMG**SRC=
\"data:image/jpeg;base64," + <imagepath> + "\"**alt = \"**pleaseview this
image\"/></b></BODY></HTML>");

i can successfully attach the image manually but when i tried to attach and send it programmatically the mail was sent without attachement.

Please let me know if there is a way to send an attachment programmatically by using email client

like image 793
mudit Avatar asked Dec 06 '22 05:12

mudit


1 Answers

I think your problem is that you are not putting right the file path.

The following works for me:

Intent i = new Intent(Intent.ACTION_SEND);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.setType("image/jpg");
i.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/Pictures/
image.jpg"));
startActivity(i);

Note that file path has 3 "/", the first two for the "file://" header, the other because sdcard dir is inside the root of the filesystem, which is "/" in linux.

like image 177
Lucas S. Avatar answered Dec 21 '22 11:12

Lucas S.