当“允许不太安全的应用程序:关闭”时,如何将邮件发送到Gmail

我可以用java发送邮件到gmail,当“ Allow less secure apps: ON ”时(你可以在这里找到代码)。但是当“允许安全性较低的应用程序:关闭”时出现错误。 请给我适当的步骤来解决这个问题。

错误:

 534-5.7.14  Please log in via your web browser and 534-5.7.14 then try again. 534-5.7.14 Learn more at 534 5.7.14 https://support.google.com/mail/answer/78754 ud10sm34016765pab.27 - gsmtp 

我如何得到令牌:

第1步:我在google开发者控制台中创建了服务帐户。

第2步:接下来,通过使用此服务帐户,我获得了令牌。 下面,您可以找到代码。

第3步:如何使用此令牌发送邮件到Gmail? 请指导我。请知道我是新手。 指导我,如果我错了

 String emailAddress = "XXXX@XXXX.XX.gserviceaccount.com"; JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance(); HttpTransport httpTransport; try { httpTransport = GoogleNetHttpTransport.newTrustedTransport(); GoogleCredential credential = new GoogleCredential.Builder() .setTransport(httpTransport) .setJsonFactory(JSON_FACTORY) .setServiceAccountId(emailAddress) .setServiceAccountPrivateKeyFromP12File(new File("XXXX.p12")) .setServiceAccountScopes(Collections.singleton(SQLAdminScopes.SQLSERVICE_ADMIN)) .build(); System.out.println("success......"); credential.refreshToken(); token = credential.getAccessToken(); 

升级到使用最新安全措施的更安全的应用程序。

怎么样:

它很简单,你只需要完成所有步骤,一切都很好解释。

如果您没有打开2步validation,那么以下教程将允许您使用javax.mail通过GMail发送邮件,几乎没有大惊小怪。 它在传输过程中使用SSL,但在限制较少的端口(587而不是465)上,您必须记住确保添加(“mail.smtp.starttls.enable”,“true”)属性,否则您将不会使用SSL。 值得记住的是,这种方法会尝试使用ssl,但如果服务器没有sslfunction,它将以纯文本forms传输。