[android] 안드로이드에서 네트워크 테스트하기
네트워크 연결 상태 확인하기
안드로이드 앱에서 네트워크 상태를 확인하려면 ConnectivityManager
클래스를 사용합니다. 다음은 해당 클래스를 사용하여 네트워크 연결 상태를 확인하는 예제코드입니다.
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnected()) {
// 네트워크 연결 상태 확인 완료
} else {
// 네트워크 연결이 없음
}
위 코드는 현재 활성화된 네트워크 상태를 확인합니다.
네트워크 테스트 수행하기
네트워크에 연결된 상태에서 실제로 인터넷에 연결되어 있는지 확인하려면 Ping
을 사용하여 서버에 패킷을 보내고 응답을 받습니다. 다음은 안드로이드에서 Ping
을 수행하는 예제코드입니다.
InetAddress address = InetAddress.getByName("www.google.com");
boolean isReachable = address.isReachable(5000); // 5초 타임아웃 설정
if (isReachable) {
// 네트워크 테스트 완료
} else {
// 네트워크에 연결되어 있으나 인터넷에 연결되지 않음
}
위 코드는 구글 웹사이트에 대한 Ping
을 수행하여 네트워크 연결 상태를 확인합니다.
안드로이드에서는 네트워크 연결 상태 확인 및 테스트를 위한 다양한 API 및 라이브러리가 제공되며, 위 예제코드 외에도 다른 방법으로도 네트워크 테스트를 수행할 수 있습니다.
참고 문헌:
- 안드로이드 공식 문서: https://developer.android.com/reference/android/net/ConnectivityManager
- Oracle 공식 문서: https://docs.oracle.com/javase/7/docs/api/java/net/InetAddress.html