Android ACTION_SEND 超链接在 GMail 中不起作用

Posted

技术标签:

【中文标题】Android ACTION_SEND 超链接在 GMail 中不起作用【英文标题】:Android ACTION_SEND Hyperlink not working in GMail 【发布时间】:2013-01-11 17:07:45 【问题描述】:

这是我在 android 中发送 html 电子邮件的代码,带有可点击的链接。

private void sendEmail()


Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
String subject = "Prueba";
String emailtext = "<a href=http://www.google.es>PruebaEmail</a>";
emailIntent.setType("message/rfc822");
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml(emailtext.toString()));

startActivity(Intent.createChooser(emailIntent, "Send mail"));

几个月前,它还在工作并发送一个可点击的超链接,但现在,当我在我的 GMail 帐户中收到邮件时,没有超链接,只有纯文本。

我已经在类型中尝试了所有这些:

emailIntent.setType("message/rfc822");

emailIntent.setType("plain/text");

emailIntent.setType("text/html");

文本如下:

String emailtext = "<a href=http://www.google.es>PruebaEmail</a>";

String emailtext = "<a href='http://www.google.es'>PruebaEmail</a>";

String emailtext = "<a href="http://www.google.es">PruebaEmail</a>";

但这些都不起作用。

这个问题只针对 GMail,因为如果我将邮件发送到 Evernote 或其他应用程序,我会得到一个可点击的链接。

这是我的 API 配置:

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="8"/>

并使用 Android 3.2 进行编译

有什么想法吗?

【问题讨论】:

我在我的设备上尝试了代码,它的工作原理。你能告诉你运行这个/gmail版本更新的设备吗? 我已经在我的 Nexus S (4.1.2) 和我的 Nexus 10 (4.2.1) 上进行了尝试,但没有在其中任何一个上工作。即使有 .setType("text/html"); 在我的电子邮件上获取纯文本 【参考方案1】:

OK 终于找到了解决问题的方法。 href 和外部的链接必须完全相同。 删除了我的 cmets 他们现在无关紧要了。

问题出在 gmail 客户端 4.2.2 我有最新的似乎 :) gmail 客户端 4.1.2 对您编写的 href 标记工作得很好。

而且 gmail 客户端这样工作真的很愚蠢。

【讨论】:

有效!非常感谢。是的,这样工作真是太愚蠢了。 @jayshill Dave 你能分享同样的例子吗

以上是关于Android ACTION_SEND 超链接在 GMail 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

如何在 android 中使用 ACTION_SEND 共享图像 + 文本?

Android - Intent.Action_Send 发送多个图像而不多次显示选择器对话框

使用 Android Intent.ACTION_SEND 发送电子邮件

使用 Android Intent.ACTION_SEND 发送电子邮件

Android:通过 Intent.ACTION_SEND 分享(某事),然后自动返回我的应用

Android - 当过滤 ACTION_SEND 以只有一个应用程序时如何防止应用程序自动运行