Я пишу приложение для Android, и в какой-то момент мне нужно отправить электронное письмо на указанный пользователем адрес. Для этого я открываю приложение электронной почты и заполняю тему и текст, позволяя пользователю заполнить получателя. Отправляемое письмо должно быть в формате html, которое я извлекаю с предварительно указанной веб-страницы. Вытащить HTML из Интернета просто, но не будет отображаться должным образом при отправке по электронной почте. Код, который я использую для открытия почтового приложения:
intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/html");
intent.putExtra(Intent.EXTRA_SUBJECT, getString(R.string.shareSubject));
intent.putExtra(Intent.EXTRA_TEXT, Html.fromHtml(body));
startActivity(Intent.createChooser(intent, "Email:"));
Это должно позволить пользователю выбрать свой почтовый клиент и отправить HTML-письмо, если выбранный клиент поддерживает его. Я тестировал приложение gmail, которое, как сообщалось, поддерживает его, но при получении электронного письма оно отображается в виде обычного текста.
Если это поможет, код, который я в основном использую для получения кода:
String input;
String body = "";
try
{
URL url = new URL("<url>");
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
while((input = in.readLine()) != null)
body = body + input;
}
catch(MalformedURLException e)
{
}
catch(IOException e)
{
}
Я не уверен, почему это терпит неудачу, все, на что я смотрел, говорит о том, что приложение gmail поддерживает отправку html-писем и что это код для этого. Любая помощь будет оценена.