반응형
안드로이드 네트워크 연결 체크 ~ Android Network Check
안드로이드에서 기본적으로 네트워크를 체크 할 수 있는 메소드를 제공해주고 있어, 따로 라이브러리나 기타 등등 자료를 찾을 필요가 없다.
Context만 가지고 있다면 현재 기기에 네트워크가 연결되어 있는지 확인을 할 수 있으며,
이를 통해 네트워크 연결 페이지를 띄우거나 각종 네트워크가 연결 안되었을 경우의 상황을 컨트롤 할 수 있다.
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
위의 ConnectivityManager와 NetworkInfo를 먼저 생성하고 초기화를 시켜준다.
if (activeNetwork != null) {
if (activeNetwork.getType() == ConnectivityManager.TYPE_WIFI
&& activeNetwork.isConnectedOrConnecting()) {
return true;
} else if (activeNetwork.getType() == ConnectivityManager.TYPE_MOBILE
&& activeNetwork.isConnectedOrConnecting()) {
return true;
} else {
return false;
}
} else {
return false;
}
위와 같이 If문으로 하여 false일 경우 네트워크 연결이 되지 않은 상황이다.
추가로 위는 Wifi와 모바일 데이터 두가지를 나눠놓았는데, 굳이 저렇게 나누지 않고도
NetworkInfo null 체크와 NetworkInfo.isConnectedOrConnecting() 체크만 하여도 사용하는데는 문제가 없을 것이라 생각이 든다.
반응형
'[# 2]…My DevelopStory' 카테고리의 다른 글
안드로이드 코틀린 그리드뷰 사용하기 ~ Android Kotlin GridView (1) | 2020.10.02 |
---|---|
안드로이드 No Activity found to handle Intent 예외처리 ~ android No Activity found to handle Intent exception (0) | 2020.09.26 |
안드로이드 글라이드(Glide) IllegalArgumentException ~ You cannot start a load for a destroyed activity (0) | 2020.09.22 |
안드로이드 NFC 권한 설정 유의 사항 ~ required = "false" (0) | 2020.07.18 |
안드로이드 ViewPager2에 대한 짧은 생각 (0) | 2020.07.01 |