1

我想用 android 2.2 发送电子邮件。首先我做了一个带有 ACTION_SEND 的意图选择器来选择使用哪个:

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 个按钮:一个用于电子邮件,一个用于消息传递。

4

2 回答 2

3

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

   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 :"));
于 2012-05-16T08:58:10.997 回答
0

您可能想要查看以下内容(以获得您最终看到的内容,即“....顺便说一句,我也想为消息传递这样做,以便最后我可以有 2 个按钮:”) : http ://www.jondev.net/articles/Sending_Emails_without_User_Intervention_%28no_Intents%29_in_Android

或者您也可以结帐: Android 电子邮件选择器

亲切的问候,

于 2012-05-16T08:51:57.327 回答