Встраивание изображения в электронную почту в Android - PullRequest
3 голосов
/ 30 июня 2010

Можно ли программно встроить изображение в текст письма, отправленного приложением «Почта» в Android?

Могу ли я использовать намерение ACTION_SEND, чтобы сделать это, или я должен составить письмо самостоятельно?

Ответы [ 2 ]

4 голосов
/ 06 декабря 2011

Если ваше изображение (или файл) находится на SD-карте, вы можете сделать следующее:

Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("image/*");
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/your_path_in_the_sd_card/your_image.png"));
startActivity(shareIntent);

Если вы не хотите отправлять изображение, вам нужно изменить MIME в "setType () "method.

Для более подробной информации проверьте этот пост .

4 голосов
/ 30 июня 2010

, чтобы поместить изображение в тело, вам нужно установить тип контента "text / html", а затем добавить тег img в тело письма. если вы не хотите использовать веб-сервер для размещения изображения, тогда вы можете использовать данные URI для изображения.

Информация и образец :

<img src="data:image/png;base64,
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP
C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA
AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J
REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq
ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0
vr4MkhoXe0rZigAAAABJRU5ErkJggg==" alt="Red dot" />

Если вы хотите прикрепить изображение к электронному письму, используйте метод putExtra и установите для него значение EXTRA_STREAM.

emailIntent.putExtra(android.content.Intent.EXTRA_STREAM, myImageStream);
...