Android
안드로이드 스마트폰의 인터넷 연결상태 유무.
일용직 코딩노동자
2019. 11. 12. 17:53
728x90
반응형
public class NetworkStatus {
public static final int WIFI = 1;
public static final int MOBILE = 2;
public static final int NOT_CONNECTED = 9999;
public static int getConnectivityStatus(Context context){ //해당 context의 서비스를 사용하기위해서 context객체를 받는다.
ConnectivityManager manager = (ConnectivityManager) context.getSystemService(context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = manager.getActiveNetworkInfo();
if(networkInfo != null){
int type = networkInfo.getType();
if(type == ConnectivityManager.TYPE_MOBILE){//3G/LTE로 연결
return MOBILE;
}else if(type == ConnectivityManager.TYPE_WIFI){//와이파이 연결
return WIFI;
}
}
return NOT_CONNECTED; //연결이 되지않은 상태
}
}
WIFI가 연결됬다면 1이 리턴되고, 데이터 3G / 4G(LTE)로 연결됬다면 2가 리턴됩니다.
아애 연결되지 않았다면 9999가 리턴됩니다.
이에 따라서 조건문을 작성하여 연결이됬을때 안됐을때의 프로그래밍이 가능합니다.
메니페스트에 인터넷 권한을 추가하여야 체크가 가능합니다.
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
궁금하신 사항은 댓글 남겨주세요.
728x90
반응형