JAVAMAIL最件单发送邮件代码

用到的JAVAMAIL的JAR,从以下地址下载:
https://download.csdn.net/download/hqbvqv/10307538 

发送邮件用到的是QQ的SMTP服务器,需要使用授权码发送.这个可以在QQ邮箱里面设置好.
void SendMail(String strContent)
{

    // 配置
    Properties prop=new Properties();
    // 设置邮件服务器主机名,这里是163
    prop.put("mail.host","smtp.qq.com" );
    // 发送邮件协议名称
    prop.put("mail.transport.protocol", "smtp");
    // 是否认证
    prop.put("mail.smtp.auth", true);

    try {
        // SSL加密
        MailSSLSocketFactory sf = null;
        sf = new MailSSLSocketFactory();
        // 设置信任所有的主机
        sf.setTrustAllHosts(true);
        prop.put("mail.smtp.ssl.enable", "true");
        prop.put("mail.smtp.ssl.socketFactory", sf);

        // 创建会话对象
        Session session = Session.getDefaultInstance(prop, new Authenticator() {
            // 认证信息,需要提供"用户账号","授权码"
            public PasswordAuthentication getPasswordAuthentication() {
                return new PasswordAuthentication("smtp账号", "授权码");
            }
        });
        // 是否打印出debug信息
        session.setDebug(true);

        // 创建邮件
        Message message = new MimeMessage(session);
        // 邮件发送者
        message.setFrom(new InternetAddress("发送人地址"));
        // 邮件接受者
        message.addRecipient(Message.RecipientType.TO, new InternetAddress("接收人地址"));
        // 邮件主题
        message.setSubject("邮件标题");
        String content = strContent;
        message.setContent(content, "text/html;charset=UTF-8");
        // Transport.send(message);
        // 邮件发送
        Transport transport = session.getTransport();
        transport.connect();
        transport.sendMessage(message, message.getAllRecipients());
        transport.close();
    } catch (Exception e) {
        e.printStackTrace();
    }

}
  注意:加入android studio的时候,如果函数不放到线程里面执行,需要加入如下代码:
if(android.os.Build.VERSION.SDK_INT > 9)
{
 StrictMode.ThreadPolicy  policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();    StrictMode.setThreadPolicy(policy);
}
并且在andriodmanifest.xml里面加入INTERNET访问权限才行.

 
<uses-permission android:name="android.permission.INTERNET" />

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值