请问怎么发送HTML电子邮件

我找到了一种使用意图发送纯文本电子邮件的方法:


final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);

emailIntent.setType("text/plain"); 

emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new     

String[]{"example@mail.com"}); 

emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Subject"); 

emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Test");

但是我需要发送HTML格式的文本。

尝试setType(“ text / html”)无效。


慕标5832272
浏览 707回答 3
3回答

POPMUISE

您可以Spanned额外输入文字。为确保该意图仅解决处理电子邮件的活动(例如Gmail和电子邮件应用程序),您可以使用ACTION_SENDTO以mailto方案开头的Uri。如果您事先不知道收件人,这也将起作用: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()&nbsp; &nbsp; .append("<p><b>Some Content</b></p>")&nbsp; &nbsp; .append("<small><p>More content</p></small>")&nbsp; &nbsp; .toString()));

梵蒂冈之花

一直试图通过gmail应用发送html,所以决定对我的发现发表一些见解,以防万一其他人遇到类似问题。似乎无论我做了什么,我都无法获得包含粗体文本的html。然后,我尝试切换到Outlook客户程序,但令我惊讶的是,它工作得很好。HTML标记也可以在其他较旧的设备上运行,但不能在我的设备上运行(galaxy s7 API 26),因此我认为gmail应用似乎已放弃了对来自意图的html语法的支持,或者也许现在您需要提供它以某种非常具体的方式进行,但没有明确记录。适用于我的上一个gmail版本是Nexus 5X API 25模拟器(Nougat)上的6.9.25 ...,它停止了从7.5.21版本开始的工作...在Nexus 5x API 26模拟器(Oreo)上
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Html5