android 邮件发送html,如何发送HTML电子邮件

我发现了一种使用intent发送纯文本电子邮件的方法:

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(“文本/ HTML”)不起作用。

你可以在你的额外中传递Spanned文本。 为了确保意图仅parsing处理电子邮件的活动(例如,Gmail和电子邮件应用程序),可以使用ACTION_SENDTO和Uri开头的mailtoscheme。 如果您事先不知道收件人,这也将起作用:

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("

Some Content

") .append("

More content

") .toString()) );

这对我来说对HTML非常有帮助,但ACTION_SENDTO对我来说并不完全正常 – 我得到了“不支持的操作”消息。 我在这里find了一个变体:

这里是我的代码,它们结合在一起:

String mailId="yourmail@gmail.com"; Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts("mailto",mailId, null)); emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Subject text here"); // you can use simple text like this // emailIntent.putExtra(android.content.Intent.EXTRA_TEXT,"Body text here"); // or get fancy with HTML like this emailIntent.putExtra( Intent.EXTRA_TEXT, Html.fromHtml(new StringBuilder() .append("

Some Content

") .append(" http://www.google.com") .append("

More content

") .toString()) ); startActivity(Intent.createChooser(emailIntent, "Send email..."));

我还没有(还)开始Android开发,但意图的文档说,如果您使用EXTRA_TEXT,MIMEtypes应该是文本/纯文本。 似乎如果你想看到HTML,你将不得不使用EXTRA_STREAM而不是…

那么只是想在文本区域添加一些html呢?

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值