【问题标题】:intent to share text to email clients (only email clients)打算将文本分享给电子邮件客户端(仅限电子邮件客户端)
【发布时间】:2012-12-06 03:00:51
【问题描述】:
String value = text.getText().toString();

        Intent intent = new Intent(Intent.ACTION_SEND);
        intent.putExtra(Intent.EXTRA_EMAIL, new String[]{"test@test.test"});
        intent.putExtra(Intent.EXTRA_SUBJECT, "subject");
        intent.putExtra(Intent.EXTRA_TEXT, value);

        startActivity(Intent.createChooser(intent, "Send Email"));

此代码运行,但它显示了一个应用程序列表,如记事本(和其他记事本应用程序)、whatsapp(和几个聊天应用程序)。

我需要一个仅包含电子邮件客户端的列表。我做了很长时间的搜索,但代码总是一样的。

【问题讨论】:

标签: android


【解决方案1】:

尝试以下内容类型的代码:

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("plain/text");
intent.putExtra(Intent.EXTRA_EMAIL, new String[] { "some@email.address" });
intent.putExtra(Intent.EXTRA_SUBJECT, "subject");
intent.putExtra(Intent.EXTRA_TEXT, "mail body");
startActivity(Intent.createChooser(intent, ""));

Edit1:查看this post,无需打开电子邮件客户端即可直接发送电子邮件。

【讨论】:

  • 更好 :-) 现在我看到了:bump、crypto4all、驱动器、电子邮件、gmail、k-9 邮件、nfc 窃听吧?我可以创建一个完整的表格来自动发送电子邮件吗?谢谢
  • 您也可以尝试使用i.setType("message/rfc822"); 这可能会从列表中删除非电子邮件客户端..无法理解您的评论..您想在不打开电子邮件应用程序的情况下发送电子邮件吗?
  • sorry 4 my chinese :-( 替代使用意图,创建一个表格直接通过电子邮件发送(没有电子邮件客户端)
猜你喜欢
  • 2013-03-03
  • 1970-01-01
  • 2022-01-13
  • 2013-01-31
  • 2020-01-16
  • 2011-05-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多