Отправить HTML письмо с намерением
Я хочу отправить HTML-сообщение по электронной почте, когда пользователь решит поделиться своим приложением. Я использую HTML для того, чтобы иметь индивидуальное и апелляционное сообщение.
Первый подход: я пытался создать строку с моим HTML (встроенный стиль), используя Html.fromHtml, но когда я получил электронное письмо, это был чистый текст, никаких настроек.
Второй подход, отправьте HTML-файл в приложении. Проблема с этим подходом состоит в том, что HTML не отображается, пока пользователь не откроет вложение.
Какое лучшее решение, возможно ли? Спасибо!
2 ответа
Вы можете достичь своей цели, используя этот метод Html.fromHtml(String);
Html.fromHtml("<font color='#ff123456'>text</font>")
Вы можете передать Spanned текст в вашем экстра. Чтобы убедиться, что намерение разрешается только для действий, которые обрабатывают электронную почту (например, приложения Gmail и электронной почты), вы можете использовать ACTION_SENDTO с Uri, начинающимся со схемы mailto. Это также будет работать, если вы заранее не знаете получателя:
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("<p><b>Some Content</b></p>")
.append("<small><p>More content</p></small>")
.toString())
);