오늘의 공부는?!/Android

[Android] java.net.SocketException: socket failed: EPERM (Operation not permitted) javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465; 에러 해결

꼬물쥰 2022. 7. 23. 22:34

smtp를 이용해서 메일 인증을 하는 중에 

java.net.SocketException: socket failed: EPERM (Operation not permitted)

javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465;

이런 에러가 발생했다

 

구글링 했을 때 여러가지 해결방법이 나와서 그대로 해봤다

- 포트를 587로 바꿔주기

- 인터넷 권한 설정해주기 

- 해당 어플 삭제 후 재설치

 

안드로이드 스튜디오에서 정상적으로 INTERNET PERMISSION 권한을 주고 앱을 실행했지만

계속해서 위의 에러가 발생했다

이럴때에는 단말기(애뮬레이터/휴대폰)에 있는 해당 어플리케이션을 삭제하고 다시 설치하면 이슈가 해결된다

 

찾아보니 위의 에러가 발생하는 원인은 android manifest 파일에서 internet 권한을 주지 않고 앱을 설치한 뒤에 

internet permission을 넣고 재빌드할 때 간혹 발생한다고 한다

즉, 네트워크 에러가 아니기때문에 삭제 후 재설치로 해결하면 된다