Android 调用系统的邮箱app发送邮件

 

第一种:

 

 

String[] email = { "3802**92@qq.com" }; // 需要注意,email必须以数组形式传入
                Intent intent = new Intent(Intent.ACTION_SEND);
                intent.setType("message/rfc822"); // 设置邮件格式
                intent.putExtra(Intent.EXTRA_EMAIL, email); // 接收人
                intent.putExtra(Intent.EXTRA_CC, email); // 抄送人
                intent.putExtra(Intent.EXTRA_SUBJECT, "这是邮件的主题部分"); // 主题
                intent.putExtra(Intent.EXTRA_TEXT, "这是邮件的正文部分"); // 正文
                startActivity(Intent.createChooser(intent, "请选择邮件类应用"));

这种方式 ,打开选择对话框后,会出现多个选择,其中还有一些不是邮箱的选项,所以这种方式不太妥靠。

 


第二种:

 

 

// 必须明确使用mailto前缀来修饰邮件地址,如果使用
                // intent.putExtra(Intent.EXTRA_EMAIL, email),结果将匹配不到任何应用
                Uri uri = Uri.parse("mailto:3802**92@qq.com");
                String[] email = { "7544**92@qq.com" };
                Intent intent = new Intent(Intent.ACTION_SENDTO, uri);
                intent.putExtra(Intent.EXTRA_CC, email); // 抄送人
                intent.putExtra(Intent.EXTRA_SUBJECT, "这是邮件的主题部分"); // 主题
                intent.putExtra(Intent.EXTRA_TEXT, "这是邮件的正文部分"); // 正文
                startActivity(Intent.createChooser(intent, "请选择邮件类应用"));

 

第二种方式很好,能直接过滤掉非邮箱app的选项。

posted @ 2014-05-04 16:14  指鹿为驴  阅读(1104)  评论(0)    收藏  举报