Android 调用系统的邮箱app发送邮件
16lz
2021-01-23
第一种:
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的选项。
更多相关文章
- Android 使用javaMail jar包发送邮件到指定邮箱,并可以发送图片附
- ANDROID L——Material Design详解(主题和布局)
- android编辑布局文件时非要降低api level或者更改主题才能显示布
- Android调用系统Email发送邮件
- Android使用JavaMail后台发送邮件遇到的一些问题
- Android之调用系统Email发送邮件