我正在编写一个应用程序,无需使用Intent即可以编程方式发送电子邮件。
我能够使用带有Gmail身份验证的SMTP使用Java Mail API编写应用程序。
但是此应用程序支持仅使用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,并发送电子邮件,如雅虎等。 当我尝试雅虎时,邮件没有被发送。
请告诉我如何完成这项任务。
先谢谢你。
答案 0 :(得分:6)
Port
和host
是变量,因不同的提供商而异。例如:
Gmail - 主持人:smtp.gmail.com,端口:465
Hotmail - 主持人:smtp.live.com,端口:587
Yahoo - 主持人:smtp.mail.yahoo.com,端口:465
根据您使用的提供商更改这些值,然后就可以完成。