Android中的意图电子邮件

时间:2015-10-20 10:24:30

标签: android android-intent

我对Android 4.1.1中的电子邮件意图一团糟。在这里我的代码:

emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.setData(Uri.parse("mailto:"));
emailIntent.setType("text/plain");
emailIntent.putExtra(Intent.EXTRA_EMAIL, "email@gmail.com");
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "subject");
emailIntent.putExtra(Intent.EXTRA_TEXT, "text");

但是对话框只显示了蓝牙和消息应用。如何在对话框中显示电子邮件应用程序?任何人都可以帮助我,非常感谢!

4 个答案:

答案 0 :(得分:2)

    Intent emailIntent;

    emailIntent = new Intent(Intent.ACTION_SENDTO);
    emailIntent.setData(Uri.parse("mailto:email@gmail.com"));
    emailIntent.putExtra(Intent.EXTRA_SUBJECT, "subject");
    emailIntent.putExtra(Intent.EXTRA_TEXT, "text");

    if (emailIntent.resolveActivity(getPackageManager()) != null) {
        startActivity(emailIntent);
    } else {
        //not_found_email_apps;
    }

答案 1 :(得分:1)

protected void sendEmail() {
  Log.i("Send email", "");
  String[] TO = {""};
  String[] CC = {""};
  Intent emailIntent = new Intent(Intent.ACTION_SEND);

  emailIntent.setData(Uri.parse("mailto:"));
  emailIntent.setType("text/plain");
  emailIntent.putExtra(Intent.EXTRA_EMAIL, TO);
  emailIntent.putExtra(Intent.EXTRA_CC, CC);
  emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Your subject");
  emailIntent.putExtra(Intent.EXTRA_TEXT, "Email message goes here");

  try {
     startActivity(Intent.createChooser(emailIntent, "Send mail..."));
     finish();
     Log.i("Finished sending email...", "");
  }
  catch (android.content.ActivityNotFoundException ex) {
     Toast.makeText(MainActivity.this, "There is no email client installed.", Toast.LENGTH_SHORT).show();
  }

答案 2 :(得分:0)

上面的代码应该适用于您的查询,但看起来您正在模拟器上进行测试,如果您对其进行测试,请确保电子邮件客户端应该存在用于发送电子邮件,例如手机内嵌Gmail客户端。

答案 3 :(得分:0)

我已经找到了我遇到这个错误的事情的原因。原因是你必须在其中设置包含邮件功能的应用程序。我忘了设置其中一个。所以我得到了这个烂摊子。谢谢大家帮帮我!