您好我正在使用以下代码发送电子邮件:
for (int i = 0; i < eMessageArray.length - 1; i++) { // important: - 1 to omit last index for i
if (eMessageArray[i+1]!=null){
temp = stringShuffle(eMessageArray[i], eMessageArray[i+1]);
} else {
temp=stringShuffle(eMessageArray[i], "NULL");
}
eMessageArray[i]=temp;
}
现在,当我使用“普通”gmail地址调用此函数时,它可以正常工作:
public static void sendEmail(String from, String to, String password) {
Email email = new SimpleEmail();
email.setHostName("smtp.googlemail.com");
email.setSmtpPort(465);
email.setAuthenticator(new DefaultAuthenticator(from, password));
email.setSSLOnConnect(true);
email.setSubject("Plain mail");
email.setMsg("test");
email.addTo(to);
email.send();
}
所以上面的工作。但是当我尝试迁移到Gmail for Business,并创建一个电子邮件地址“me@mycompany.com”(它与Gmail挂钩)时,我收到了身份验证错误:
sendMail("me@gmail.com","friend@gmail.com", "my-password");
给我这个错误:
sendMail("me@mycompany.com","friend@gmail.com", "my-new-password");
我怀疑我需要在我的Google Apps控制台中设置一些内容,但我甚至不确定从哪里开始查找信息。
有人可以帮忙吗? 感谢。
答案 0 :(得分:0)
这个答案来自类似的问题here。
问题是由于允许安全性较低的应用访问您的帐户。单击以下链接https://www.google.com/settings/security/lesssecureapps并禁用安全设置。有关详细信息,请参阅此here。
祝你好运!