Как отправить HTML-содержимое электронной почты с изображениями в теле письма с помощью Android

Мой код:

 final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND_MULTIPLE);
 emailIntent.setType("text/html");
 emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL,"to");
 emailIntent.putExtra(android.content.Intent.EXTRA_CC,"cc");
 emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,"subject");
 emailIntent.putExtra(android.content.Intent.EXTRA_TEXT,Html.fromHtml(body));

this.startActivity(Intent.createChooser(emailIntent, "Choose your email program"));

Но в теле письма не отображаются некоторые HTML-файлы и изображения.

Помогите мне, пожалуйста.

Заранее спасибо.

0
kailash barochiya 29 Дек 2012 в 09:55
Вы отправляете изображения в теге <img>? Можете ли вы опубликовать фрагмент вашего body содержания, которое вы отправляете.
 – 
Pratik Sharma
29 Дек 2012 в 11:16
Мое тело получает данные json, например
 – 
kailash barochiya
31 Дек 2012 в 10:05
Опубликуйте свои данные json здесь
 – 
Pratik Sharma
31 Дек 2012 в 10:10
<ширина таблицы = "192" border = "0" cellpadding = "0" cellspacing = "0"> pro.wrapmail.com/wraps/custom/images \ user \ 6903_1_350.jpg" border = "0" usemap = "# top_map" /> ......
 – 
kailash barochiya
31 Дек 2012 в 10:16
Но отображение тела почты    Беглец под угрозой исчезновения: SASY ARULONG (HI) 29.12.2012 12:00:00 PM 
 – 
kailash barochiya
31 Дек 2012 в 10:29

1 ответ

Лучший ответ

Попробуйте это:

emailIntent.putExtra(android.content.Intent.EXTRA_TEXT,Html.fromHtml(new StringBuilder()
           .append(body).toString()));

Вместо:

emailIntent.putExtra(android.content.Intent.EXTRA_TEXT,Html.fromHtml(body));

РЕДАКТИРОВАТЬ:

Вот мой тест, и он работает хорошо.

       String body = "<html><body><h1>this is h1</h1><b>wel come to html formet</b></body></html>";

       final Intent shareIntent = new Intent(Intent.ACTION_SENDTO, Uri.parse("mailto:"));
       shareIntent.putExtra(Intent.EXTRA_SUBJECT, "The Subject");
       shareIntent.putExtra(
       Intent.EXTRA_TEXT,
       Html.fromHtml(new StringBuilder()
           .append(body).toString())
       );
       startActivity(shareIntent);

Спасибо.

1
Pratik Sharma 1 Янв 2013 в 09:19
Я пытаюсь отобразить простой html-контекст, например

this is h1

Добро пожаловать в html-формат , но получите мои данные json. не отображать.
 – 
kailash barochiya
31 Дек 2012 в 17:02
Спасибо pratik, я пробую эту работу с кодом, но я добавляю изображение, которое не отображается.
 – 
kailash barochiya
1 Янв 2013 в 14:17
String body = "

это h1

mindinventory.com/images/logo.gif '/> >"; последнее намерение shareIntent = новое намерение (Intent.ACTION_SENDTO, Uri.parse ("mailto:")); shareIntent.putExtra (Intent.EXTRA_SUBJECT, «Тема»); shareIntent.putExtra (Intent.EXTRA_TEXT, Html.fromHtml (новый StringBuilder (). append (body) .toString ())); startActivity (shareIntent);
 – 
kailash barochiya
1 Янв 2013 в 15:03
Ссылайтесь на эту ветку. [stackoverflow.com/a/6476890/556975]. Отправка изображения с телом сообщения электронной почты является открытой проблемой для Android.
 – 
Pratik Sharma
1 Янв 2013 в 16:12
Спасибо pratik отправить изображение с использованием намерения невозможно, но другой способ, тогда дайте мне пример ..... спасибо
 – 
kailash barochiya
1 Янв 2013 в 16:39