안녕하세요?
서비스 내에서 소켓 생성후 서버와 접속하고 있습니다.
서버자체 방화벽 타임아웃이 10분이라 정상적인 상황에서는 10분마다 한번씩 SocketException이 발생합니다. 이런경우 서버와의 접속이 끊어져서 재접속하도록 되어 있습니다.
그런데 간혹 서버와 접속이 끊겼음에도 불구하고 Exception이 발생하지 않습니다. 이런 경우 isConnected 이런 검사를 해도 값은 true인데 만약 이때 소켓으로 값을 넘긴다던가 하면 그제서야 exception이 발생합니다.
혹시 어떤 경우에 이런 현상이 발생하게 되는 것인가요?
그리고 이런 상태로 지속되다 짧게는 20분 길게는 19시간 만에 서비스가 onCreate 되면서 다시 살아납니다. onDestroy발생되지도 않았구요..
서비스 시작하라고 호출하는 startService의 모든 부분에 로그를 남겨 봤는데 호출을 받고 다시 시작하는것은 아니더라구요..
제 질문을 요약하자면
1. 서버와의 접속이 끊어졌음에도 SocketException에 들어오지 않는 경우
2. 서비스가 갑자기 되살아 나는 경우
입니다..어느 부분을 살펴봐야 할까요?