我正在编写一个应用程序,以便在不使用Intent的情况下以编程方式发送电子邮件。
我能够使用Java Mail API编写应用程序,使用SMTP和Gmail身份验证。
但该应用程序支持仅使用gmail地址发送电子邮件。使用任何Gmail地址和密码,我也可以将电子邮件发送到任何电子邮件地址。
private Properties _setProperties() {
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.gmail.com");
if(_debuggable) {
props.put("mail.debug", "true");
}
if(_auth) {
props.put("mail.smtp.auth", "true");
}
props.put("mail.smtp.port", _"465");
props.put("mail.smtp.socketFactory.port", _"465");
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.socketFactory.fallback", "false");
return props;
}
但我想使用除gmail以外的任何带有密码的电子邮件地址,并像雅虎等发送电子邮件。当我尝试使用雅虎时,邮件没有发送。
请告诉我如何完成这项任务。
提前谢谢。
Port
和host
是变量,不同的提供者会有所不同。示例:
Gmail-主机:smtp.Gmail.com,端口:465
Hotmail-主机:smtp.live.com,端口:587
Yahoo-主机:smtp.mail.Yahoo.com,端口:465
根据您正在使用的提供程序更改这些值,即可完成。