首页 > 解决方案 > 在我的应用程序将我定向到电子邮件应用程序后,如何了解是否实际发送了电子邮件

问题描述

我正在尝试为“咖啡订购”应用程序制作原型。当您提交订单时,我的应用程序会将用户定向到包含订单详细信息的电子邮件应用程序。当发送电子邮件时,我想切换到一个新活动,其中显示“您的订单已成功下达”。现在,我有两个问题:

  1. 有没有办法让手机自动发送电子邮件,还是用户需要自己按发送?

  2. 发送邮件后,我如何了解电子邮件是否实际发送?

这是我目前正在使用的代码:

    public void composeEmail() {

        String[] addresses=new String[1];
        addresses[0]="emailaddress@coffee.com";

        String subject="Coffee Order";

        Intent intent = new Intent(Intent.ACTION_SENDTO);
        intent.setData(Uri.parse("mailto:"));

        intent.putExtra(Intent.EXTRA_EMAIL, addresses);
        intent.putExtra(Intent.EXTRA_SUBJECT, subject);
        intent.putExtra(Intent.EXTRA_TEXT, orderDetails);

        if (intent.resolveActivity(getPackageManager()) != null) {
            startActivity(Intent.createChooser(intent, "Send Email"));
        }
    }

标签: javaandroid

解决方案


有没有办法让手机自动发送邮件

不使用Intent动作。您可能会考虑让您的应用程序与您创建的 Web 服务一起使用,该 Web 服务会在其中发送电子邮件。

还是用户需要自己按发送?

是的,如果您使用的是Intent动作。

发送邮件后,我如何知道邮件是否真的发送了?

你没有。该信息对用户和电子邮件客户端是私有的。您可能会考虑让您的应用程序与您创建的 Web 服务一起使用,该 Web 服务在其中发送电子邮件,这样您就知道电子邮件何时发送。


推荐阅读