我正在使用Intent.ACTION_SEND从我的Android应用发送电子邮件。在我的手机上新安装应用程序时,以下代码就像魅力一样(显示“选择电子邮件应用程序”覆盖图):
private void sendEmail(String mailBody, String recipient) {
try {
Intent emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.setType("message/rfc822");
emailIntent.putExtra(Intent.EXTRA_EMAIL , recipient);
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "My subject");
emailIntent.putExtra(Intent.EXTRA_TEXT , mailBody);
startActivity(Intent.createChooser(emailIntent, "Send mail..."));
}
catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(MyActivity.this, "There are no email clients installed.", Toast.LENGTH_SHORT).show();
}
catch (Exception e) {
StringWriter sw = new StringWriter();
e.printStackTrace(new PrintWriter(sw));
String exceptionTrace = sw.toString();
Toast.makeText(MyActivity.this, "An error occurred while trying to send mail: " + exceptionTrace, Toast.LENGTH_SHORT).show();
}
}
在我的应用中执行某些操作(没有任何电子邮件相关),然后再次尝试发送电子邮件后,“选择的电子邮件应用”叠加层不再显示。没有显示异常或错误,我在日志中找不到任何内容。 有谁知道可能是什么问题?