电子邮件意图始终默认启动gmail

时间:2013-07-18 16:16:59

标签: android email android-intent

String body="message";

Intent emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Check out this book I am reading");  
emailIntent.setType("plain/text");  
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, body);  
startActivity(Intent.createChooser(emailIntent, "Send email..."));

无论我做什么(删除所有Gmail帐户并使用邮件应用程序登录Hotmail帐户),此代码默认启动Gmail,不显示或让我选择我的通用邮件应用程序。

因此,无法让用户通过Hotmail或其他邮件提供商发送电子邮件。

更新 的 实际上这是我遇到过的最好的代码,它直接向你展示了一个只有邮件客户端的应用选择器。下面的答案将为您提供一个可供选择的大量应用程序列表。

String mailTo="";
Intent email_intent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts("mailto",mailTo, null)); 
email_intent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Subject text here");
email_intent.putExtra(android.content.Intent.EXTRA_TEXT,"Body text here"); 

startActivity(Intent.createChooser(email_intent, "Send email..."));

1 个答案:

答案 0 :(得分:2)

尝试使用正确的MIME类型(text/plain)而不是无效的MIME类型(plain/text)。