我正在构建一个Android应用程序。我想发送xxxxx@outlook.com
的电子邮件。这是代码。
public void setUp
{
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp");
props.put("mail.smtp.auth", "true");
this.mailhost = "smtp.live.com";
props.setProperty("mail.host", mailhost);
props.put("mail.smtp.port", "587");
props.setProperty("mail.smtp.starttls.enable", "true");
}
我知道用户应该是整个电子邮件地址。但是当我使用时,我收到了一封电子邮件,说我应该在发送电子邮件之前开始会话。
此代码工作3次然后停止。
答案 0 :(得分:0)
调试输出显示什么?什么是确切的错误消息?你收到的电子邮件到底是什么意思?您可能需要连接POP3或IMAP才能阅读邮件,然后才能发送邮件。
答案 1 :(得分:0)
您应该从Javamail获取会话,以创建您的消息。然后,使用传输对象,您可以发送它。
String host = "localhost";
int port = 443;
String user = "BruceWayne@example.org";
String password = "S3cr3tP4ss";
Session session = Session.getDefaultInstance(props);
session.setDebug(true);
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(user, "Dark Knight"));
msg.setSubject("Hello Selina");
msg.setText("Do you want to have diner ?");
Transport transport = session.getTransport("smtp");
transport.connect(host, port, user, password);
transport.sendMessage(msg, msg.getAllRecipients());