我正在尝试在Android中创建邮件发送应用程序.
如果我使用:
Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
Run Code Online (Sandbox Code Playgroud)
这将启动内置的Android应用程序; 我正在尝试直接发送邮件,而不使用此应用程序.
我发现了一种使用意图发送纯文本电子邮件的方法:
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");
Run Code Online (Sandbox Code Playgroud)
但我需要发送HTML格式的文本.
尝试setType("text/html")不起作用.
我已经生成了一个HTML代码(带有<html><body></body></html>标签)作为String.现在我想将这个HTML代码作为HTML发送到邮件.我的代码如下.
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/html");
intent.putExtra(Intent.EXTRA_EMAIL, new String[]{"me@mydomain.com"});
intent.putExtra(Intent.EXTRA_SUBJECT, "I would like to buy the following");
intent.putExtra(Intent.EXTRA_TEXT, purchaseOrder());
startActivity(Intent.createChooser(intent, "sending mail"));
Run Code Online (Sandbox Code Playgroud)
其中的purchaseOrder()方法是将具有完整HTML代码的字符串传递给我.但是,虽然GMail客户端在我的Nexus1上打开,但它包含所有HTML标记的String,而不是实际的HTML视图.我试过以下但是错了.GMail坠毁了.
intent.putExtra(Intent.EXTRA_STREAM, purchaseOrder());
Run Code Online (Sandbox Code Playgroud) 
如何通过超文本标记语言(HTML)在Android的默认电子邮件客户端中获取内联图像?
我必须将文本格式化为电子邮件客户端的电子邮件正文中的表格.但我读到某处android不
支持
<table>标签.还有其他选择吗?我尝试了很多,但我仍然没有找到任何好的解决方案.请任何人都可以帮助我.
code
Run Code Online (Sandbox Code Playgroud)
String body ="<table border ="+"1"+"> <tr> <td> row 1,cell 1 </ td>"+"<td> row 1,cell 2"+"</ tr>" +"<tr>"+"<td>第2行,单元格1 </ td>"+"<td>第2行,单元格2 </ td>"+"</ tr>"+"</ table>" ;
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("text/html");
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject.getText());
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml(body).toString());
startActivity(Intent.createChooser(emailIntent, "Email:"));
Run Code Online (Sandbox Code Playgroud)
实际输出是这个

但我预期的输出类似于以下内容:
