我有一个场景,我需要从我的Android应用程序发送电子邮件。
String to = textTo.getText().toString();
String subject = textSubject.getText().toString();
String message = textMessage.getText().toString();
Intent email = new Intent(Intent.ACTION_SEND);
email.putExtra(Intent.EXTRA_EMAIL, new String[]{ to});
//email.putExtra(Intent.EXTRA_CC, new String[]{ to});
//email.putExtra(Intent.EXTRA_BCC, new String[]{to});
email.putExtra(Intent.EXTRA_SUBJECT, subject);
email.putExtra(Intent.EXTRA_TEXT, message);
//need this to prompts email client only
email.setType("message/rfc822");
startActivity(Intent.createChooser(email, "Choose an Email client :"));
我使用上面的代码打开了gmail应用程序并发送了邮件。
但有没有一种方法可以从我们的应用程序跟踪,如调用活动或片段是否发送邮件,以便我需要在我的代码中进行一些UI更新
答案 0 :(得分:0)
你不能,这不是API的一部分。即使没有发送按钮,也会在按下发送按钮后返回。
答案 1 :(得分:0)
由于意图启动另一个应用程序,这些其他应用程序负责返回邮件发送或不发送的某种信息 - 我不知道任何邮件应用程序实际上是这样做的。如果有一个,不是每个人都会使用它
因此,确保获取信息的唯一方法是使用您自己的邮件服务器和AndroidMail。这样您就可以直接从应用发送邮件,而不是将任务分配给其他应用,就像使用Intent.ACTION_SEND