博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 基于Android的手机邮件收发(JavaMail)之四(邮件的发送)
阅读量:6269 次
发布时间:2019-06-22

本文共 3743 字,大约阅读时间需要 12 分钟。

上一个邮件的接受,因为不当操作,保存未完成,一切东西都得从头开始那就先从邮件发送来吧。

先下我们做一个较为简单的邮件发送

以下是源代码:相信看过上篇文章所给连接的人,对于javamail应该都有了一定的认识和了解

sendMailpackage mi.email.activity;import java.io.IOException;import java.util.Properties;import javax.mail.Address;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import mi.learn.com.R;import android.app.Activity;import android.content.SharedPreferences;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;public class SendMail extends Activity {    private Button btnClick;    private EditText txtToAddress;    private EditText txtSubject;    private EditText txtContent;    private static final String SAVE_INFORMATION = "save_information";    String username;    String password;    public void SendMail() throws MessagingException, IOException {        // 用sharedpreference来获取数值        SharedPreferences pre = getSharedPreferences(SAVE_INFORMATION,                MODE_WORLD_READABLE);        String content = pre.getString("save", "");        String[] Information = content.split(";");        username = Information[0];        password = Information[1];        // 该部分有待完善!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!        Properties props = new Properties();        props.put("mail.smtp.host", "smtp.sina.com");// 存储发送邮件服务器的信息        props.put("mail.smtp.auth", "true");// 同时通过验证        // 基本的邮件会话        Session session = Session.getInstance(props);        session.setDebug(true);// 设置调试标志        // 构造信息体        MimeMessage message = new MimeMessage(session);        // 发件地址        Address fromAddress = null;        // fromAddress = new InternetAddress("sarah_susan@sina.com");        fromAddress = new InternetAddress(username);        message.setFrom(fromAddress);        // 收件地址        Address toAddress = null;        toAddress = new InternetAddress(txtToAddress.getText().toString());        message.addRecipient(Message.RecipientType.TO, toAddress);        // 解析邮件内容        message.setSubject(txtSubject.getText().toString());// 设置信件的标题        message.setText(txtContent.getText().toString());// 设置信件内容        message.saveChanges(); // implicit with send()//存储有信息        // send e-mail message        Transport transport = null;        transport = session.getTransport("smtp");        transport.connect("smtp.sina.com", username, password);        transport.sendMessage(message, message.getAllRecipients());        transport.close();        System.out.println("邮件发送成功!");    }    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.send_email);        txtToAddress = (EditText) findViewById(R.id.txtToAddress);        txtSubject = (EditText) findViewById(R.id.txtSubject);        txtContent = (EditText) findViewById(R.id.txtContent);        txtToAddress.setText("自己的邮箱@qq.com");        txtSubject.setText("Hello~");        txtContent.setText("你好,我在做程序呢~");        btnClick = (Button) findViewById(R.id.btnSEND);        btnClick.setOnClickListener(new OnClickListener() {            public void onClick(View v) {                // TODO Auto-generated method stub                try {                    SendMail();                } catch (MessagingException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();                } catch (IOException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();                }            }        });    }}

界面效果图:

 

转载地址:http://rappa.baihongyu.com/

你可能感兴趣的文章
nginx 基础文档
查看>>
LintCode: Unique Characters
查看>>
Jackson序列化和反序列化Json数据完整示例
查看>>
.net 中的DllImport
查看>>
nyoj 517 最小公倍数 【java睑板】
查看>>
include与jsp:include区别
查看>>
ftp的20 21端口和主动被动模式
查看>>
MySQL存储引擎选型
查看>>
Java中的statickeyword具体解释
查看>>
Linux车载系统的开发方向
查看>>
并发编程之五--ThreadLocal
查看>>
摄像头驱动OV7725学习笔记连载(二):0V7725 SCCB时序的实现之寄存器配置
查看>>
iOS播放短的音效
查看>>
[java] java 线程join方法详解
查看>>
JQuery datepicker 用法
查看>>
golang(2):beego 环境搭建
查看>>
天津政府应急系统之GIS一张图(arcgis api for flex)讲解(十)态势标绘模块
查看>>
程序员社交宝典
查看>>
ABP理论学习之MVC控制器(新增)
查看>>
Netty中的三种Reactor(反应堆)
查看>>