0

我使用以下代码从这里开始发送电子邮件:

Android:使用电子邮件意图发送电子邮件,可以在发送前更改消息吗?

代码如下:

private void sendEmail(String recipient, String subject, String message) { 
try { 
    final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); 
    emailIntent.setType("plain/text"); 
    if (recipient != null)  emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{recipient}); 
    if (subject != null)    emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject); 
    if (message != null)    emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, message); 

    startActivity(Intent.createChooser(emailIntent, "Send mail...")); 

} catch (ActivityNotFoundException e) { 
    // cannot send email for some reason 
} 

}

在我的手机 (HTC Desire) 上进行测试时,我没有选择使用我的 Exchange/Outlook 电子邮件(请注意,例如,当我单击网络上的电子邮件链接时我会这样做)。

相反,我得到了“Gmail”和“Evernote - Create Note”的选项(很奇怪)。

该代码在 Gmail 中按预期工作,这很棒,但我需要它才能在 Outlook 中工作。有人知道问题是什么吗?谢谢。

4

1 回答 1

0

抱歉,但我问了这个问题两次(每个帖子之间已经过了一段时间,我忘记了我已经问过了!)。

无论如何,在这里找到了解决方案: 如何通过 Intents 打开电子邮件程序(但只有一个电子邮件程序)

更改 MIME 类型就是答案,这就是我在我的应用程序中所做的以更改相同的行为。我用了 intent.setType("message/rfc822");

像梦一样工作!

于 2012-12-18T17:03:25.903 回答