为了账号安全,请及时绑定邮箱和手机立即绑定

怎么发送HTML电子邮件

怎么发送HTML电子邮件

江户川乱折腾 2019-10-11 14:33:37
我找到了一种使用意图发送纯文本电子邮件的方法: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”)无效。
查看完整描述

3 回答

?
神不在的星期二

TA贡献1963条经验 获得超6个赞

您可以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()

    .append("<p><b>Some Content</b></p>")

    .append("<small><p>More content</p></small>")

    .toString())

);


查看完整回答
反对 回复 2019-10-11
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

一直试图通过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)上


查看完整回答
反对 回复 2019-10-11
  • 3 回答
  • 0 关注
  • 422 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信