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

时间:2018-12-13 04:02:42

标签: android

我甚至在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.Send,它将显示所有社交媒体平台,包括facebook和whatsapp ..etc

谢谢

1 个答案:

答案 0 :(得分:0)

此内容取自Adroid developers site,并与this question组合:

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);
    }
}

请注意,我进行了一些更改以匹配问题的大小写。