2015-01-28 3 views
1

무선 랜에 연결되어 있지 않은 경우 자동으로 작동하는 RC-Car를 만들었습니다.Java로 네트워크 상태 가져 오기

자바를 사용하여 네트워크 연결 상태를 확인할 수 있습니까? (연결됨/연결되지 않음)

연결이 끊어 질 때까지 매 초마다 호스트에 ping 할 수 있다고 생각합니다. 그러나 나는 이것을하기위한 더 좋은 방법이 있기를 바랍니다.

감사합니다.

답변

0

불행히도 이벤트를 통해 연결 상태 변경에 대한 알림을받는 방법을 모르므로 폴링을 사용해야합니다.

가장 간단한 방법은 주기적으로 InetAddress.isReachable()을 호출하는 것입니다 (here 설명). 그것은 (일반적으로) 후드 내부에서 ping을 사용하므로 상당히 빠른 답변을 제공해야합니다.

또는 Windows의 InternetGetConnectedState과 같은 전용 시스템 호출을 사용할 수 있습니다. JNI를 사용하여 호출하고 부울을 반환합니다.

+0

루트로 실행중인 경우 * nix 플랫폼에서만 핑을 사용합니다. 그렇지 않으면 TCP 소켓을 에코 포트에 연결하려고 시도합니다. – EJP

관련 문제