MailSender
简介
MailSender基于JavaMail for Android开发,旨在帮助开发者在Android平台快速实现邮件发送
MailSender 特点
- Kotlin开发,兼容Java项目
- 支持发送纯文本、html、SpannableString内容邮件发送
- 支持发送带附件邮件
- 支持抄送,密送
集成
repositories {
jcenter()
}
implementation 'com.teprinciple:mailsender:1.2.0'
使用
kotlin使用
// 创建邮箱
val mail = Mail().apply {
mailServerHost = "smtp.qq.com"
mailServerPort = "587"
fromAddress = "[email protected]"
password = "xxxxxxxx"
toAddress = arrayListOf("[email protected]")
subject = "MailSender"
content = "MailSender Android快速实现发送邮件"
attachFiles = arrayListOf(file)
}
// 发送邮箱
MailSender.getInstance().sendMail(mail)
Java使用
// 创建邮箱
Mail mail = new Mail();
mail.mailServerHost = "smtp.qq.com";
mail.mailServerPort = "587";
mail.fromAddress = "[email protected]";
mail.password = "xxxxxxxx";
mail.toAddress = arrayListOf("[email protected]");
mail.subject = "MailSender";
mail.content = "MailSender Android快速实现发送邮件";
mail.attachFiles = arrayListOf(file);
// 发送邮箱
MailSender.getInstance().sendMail(mail);
发送Html、SpannableString格式的邮件
只需将Mail类中的content,换成html或者SpannableString
// html 内容的邮件
content =
"""
<p1 style = "color: red">MailSender</p1><br/>
<p1 style = "color: blue">Android快速实现发送邮件</p1><br/>
<p1 style = "color: blue">https://github.com/teprinciple/MailSender</p1><br/>
<p6 style = "color: gray">这是html内容的邮件</p1><br/>
<img src="https://avatars2.githubusercontent.com/u/19629464?s=460&v=4">
"""
//SpannableString内容的邮件
content = SpanUtils(this@MainActivity)
.appendLine("MailSender").setFontSize(28, true).setForegroundColor(Color.RED)
.appendLine("Android快速实现发送邮件")
.appendLine("https://github.com/teprinciple/MailSender").setForegroundColor(Color.BLUE)
.appendLine("这是SpannableString内容的邮件").setForegroundColor(Color.parseColor("#efefef")).setFontSize(12, true)
.create()
Mail说明
属性 | 说明 | 是否必须 |
---|---|---|
mailServerHost | 发件邮箱服务器 | true |
mailServerPort | 发件邮箱服务器端口 | true |
fromAddress | 发件邮箱地址 | true |
password | 发件箱授权码(密码) | true |
toAddress | 直接收件人邮箱 | true |
ccAddress | 抄送者邮箱 | false |
bccAddress | 密送者邮箱 | false |
subject | 邮件主题 | false |
content | 邮件内容 | false |
attachFiles | 附件 | false |
openSSL | ssl验证开关(是否打开依据邮箱提供商配置) | false |
sslFactory | ssl实现类 只在openSSL=true时生效 | fjavax.net.ssl.SSLSocketFactory |
Demo体验
关于授权码的获取
下面是qq邮箱授权码获取 怎样获取授权码?
gMail注意事项
如果一直报错 Could not connect to SMTP host: smtp.gmail.com, port: 465, response: -1 可能你的gMail认证被阻止,在google账户中,打开“允许低安全应用”开关.