android - 如何在 android 2.2 中发送电子邮件?

标签 android android-intent

我想用 android 2.2 发送电子邮件。首先,我制作了一个带有 ACTION_SEND 的 Intent 选择器来选择要使用的:

Intent intent = new Intent(Intent.ACTION_SEND);

intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_SUBJECT, Resources.getString("EmailInvitationSubject", getBaseContext()));
String body = Resources.getString("EmailInvitationBody", getBaseContext()) + Local.User.FirstName;
intent.putExtra(Intent.EXTRA_TEXT, body);

startActivity(Intent.createChooser(intent, "Invite friends"));

但在这种情况下,选择器会显示“蓝牙、消息、Google+、Gmail”。我只想显示 Gmail 或其他电子邮件应用程序。

我在 sdk 文档中看到有一个新的 CATEGORY_APP_EMAIL 可供使用,但它仅在 API 级别 15 中可用。我必须保持 API 级别 8。有没有办法做到这一点?

顺便说一句,我也想为消息传递做这件事,这样最后我可以有 2 个按钮:一个用于电子邮件,一个用于消息传递。

最佳答案

此代码将仅显示电子邮件客户端,

   Intent email = new Intent(Intent.ACTION_SEND);
    email.putExtra(Intent.EXTRA_EMAIL, new String[]{"youremail@yahoo.com"});          
    email.putExtra(Intent.EXTRA_SUBJECT, "subject");
    email.putExtra(Intent.EXTRA_TEXT, "message");
    email.setType("message/rfc822");
    startActivity(Intent.createChooser(email, "Choose an Email client :"));

关于android - 如何在 android 2.2 中发送电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10614908/

相关文章:

javascript - Titanium:Android设备上的数据加解密技术

Android - 显示声音通知

java - LibGdx Android 游戏在恢复时崩溃并出现奇怪的键码 (1026)

android - 错误找不到符号变量 FileProvider 包 android.support.v4.content 不存在

java - 如何创建从今天起 X 天结束的 Android 日历事件

android - 以编程方式在android中发送带附件的电子邮件

java - 从 getActionProvider() 设置 ShareActionProvider 时如何解决 Null 问题?

java - android 将十六进制转换为字符

android - 如何从链接分享图片,即不下载图片只需使用按钮分享

android - 有什么方法可以查询特定类型的支持 Intent Filter 的应用程序吗?