我收到服务器响应,它为我们提供了通过gmail发送的HTML。 这在应用程序的iOS版本上运行良好,但文本只是在Android应用程序中以纯文本形式出现。
以下是我们获得的响应的示例部分:
<html>
<p style="color: #5987c6">My Shared Itinerary - John Smith.</p>
<p>Hello.</p>
<p>I want to share my Memmingen, DE trip itinerary with you.</p>
<p>Shared using
<span style="color: #5987c6">Blah</span> by BlahBlah
</p>
</html>
我尝试过以下操作:
final Intent shareIntent = new Intent(Intent.ACTION_SENDTO, Uri.parse("mailto:"));
shareIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
shareIntent.putExtra(Intent.EXTRA_TEXT, Html.fromHtml(new StringBuilder().append(testBody).toString()));
将testBody设置为上面给出的示例。 我只是想知道是否有可能立即将这项工作与服务器的响应相关联,或者一旦收到它我是否必须重新格式化? 谢谢你的帮助
答案 0 :(得分:2)
我收到服务器响应,它为我们提供了通过gmail发送的HTML。
不,它会被发送&#34;根据用户选择的应用,从ACTION_SENDTO
mailto:
上支持Uri
的设备上的任何应用中选择。或者,用户可以选择不发送电子邮件。
然而,文本只是在Android应用程序中以纯文本形式出现
用户可以选择处理您的请求,以确定如何处理您的内容。
您可以通过以下方式最大化此工作的几率:
Using EXTRA_HTML_TEXT
以及EXTRA_TEXT
,其中EXTRA_HTML_TEXT
包含原始HTML
使用符合what Html.fromHtml()
supports的HTML,其中特别不包含span
标记或style
属性。
这些步骤都不能保证Gmail或任何其他应用程序必须忠实地呈现和使用HTML格式的消息,但它们应该有所帮助。