只显示电子邮件程序时发送电子邮件



我有多篇关于发送电子邮件的帖子,甚至在Android文档中。IT似乎不起作用。我想基本上允许用户选择他们的电子邮件程序来发送电子邮件。这是代码

Intent emailIntent = new Intent(Intent.ACTION_SENDTO);
emailIntent.setData(Uri.parse("mailto:"));
emailIntent.setType("*/*");
emailIntent.putExtra(Intent.EXTRA_EMAIL  , new String[]{"xyz@gmail.com"});
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Subject");
emailIntent.putExtra(Intent.EXTRA_TEXT   , "msg");
startActivity(Intent.createChooser(emailIntent, "Send mail..."));

然而它什么也不做(即没有活动(

我做错了什么?如果我使用Action。发送然后显示所有社交媒体平台,包括facebook和whatsapp。。etc

谢谢

这是从Adroid开发者网站上获得的,并结合这个问题:

public void composeEmail(String[] addresses, String subject, String msessage) {
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("application/octet-stream");
intent.putExtra(Intent.EXTRA_EMAIL, addresses);
intent.putExtra(Intent.EXTRA_SUBJECT, subject);
intent.putExtra(Intent.EXTRA_TEXT, message);
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(intent);
}
}

注意,我做了一些修改以匹配问题的情况。

最新更新