Android開發javax.mail適配outlook郵箱發送

先看下報錯:

: com.sun.mail.util.MailConnectException: Couldn't connect to host, port: smtp.outlook.com, 465; timeout -1;
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err:   nested exception is:
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err:     java.net.ConnectException: failed to connect to smtp.outlook.com/52.98.33.226 (port 465) from /:: (port 37434): connect failed: ETIMEDOUT (Connection timed out)
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err: at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2210)
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err: at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:722)
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err: at javax.mail.Service.connect(Service.java:364)
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err: at javax.mail.Service.connect(Service.java:222)
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err: at javax.mail.Service.connect(Service.java:171)
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err: at javax.mail.Transport.send0(Transport.java:230)
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err: at javax.mail.Transport.send(Transport.java:100)
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err: at com.xbykj.mobilesales.utils.SendEmail.sendEmail(SendEmail.java:196)
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err: at com.xbykj.mobilesales.helper.OrderHelper$1.run(OrderHelper.java:270)
2022-08-22 11:26:25.442 15187-15307/com.xbykj.mobilesales W/System.err: at java.lang.Thread.run(Thread.java:920)
2022-08-22 11:26:25.443 15187-15307/com.xbykj.mobilesales W/System.err: Caused by: java.net.ConnectException: failed to connect to smtp.outlook.com/52.98.33.226 (port 465) from /:: (port 37434): connect failed: ETIMEDOUT (Connection timed out)
2022-08-22 11:26:25.443 15187-15307/com.xbykj.mobilesales W/System.err: at libcore.io.IoBridge.connect(IoBridge.java:188)
2022-08-22 11:26:25.443 15187-15307/com.xbykj.mobilesales W/System.err: at java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java:142)
2022-08-22 11:26:25.443 15187-15307/com.xbykj.mobilesales W/System.err: at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:390)
2022-08-22 11:26:25.443 15187-15307/com.xbykj.mobilesales W/System.err: at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:230)
2022-08-22 11:26:25.443 15187-15307/com.xbykj.mobilesales W/System.err: at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:212)
2022-08-22 11:26:25.443 15187-15307/com.xbykj.mobilesales W/System.err: at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:436)

關鍵報錯信息: Caused by: java.net.ConnectException: failed to connect to smtp.outlook.com/52.98.33.226 (port 465) from /:: (port 37434): connect failed: ETIMEDOUT (Connection timed out)

居然連接超時,代碼和別人的一樣啊。

解決方案:把端口改爲587即可
case "outlook.com":
            SMTPHost = "smtp.outlook.com";
            SMTPPort = "587";
            break;

已經適配騰訊郵箱和outlook郵箱,也適配了g_mail郵箱,有遇到其他問題的,可以私信或者評論我

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章