인터넷 연결 상태
인터넷 연결 상태는 크게 연결된 상태와 연결되지 않은 상태로 나눌 수 있다.
연결된 상태는 다시 무선랜(WIFI)으로 연결된 상태와 모바일 데이터(3G/LTE)로 연결된 상태로 나누어진다.
인터넷 연결 상태 확인하기
우선 매니페스트에 연결상태를 확인할 수 있는 권한을 추가해주어야한다.
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
연결된 상태만을 알고싶다면, 다음과 같이 간단하게 구현하면 된다.
public Boolean isNetWorkConnected() {
ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = manager != null ? manager.getActiveNetworkInfo() : null;
return activeNetwork != null;
}
만약 연결된 상태의 타입(무선랜인지, 모바일데이터인지)을 알고싶다면 다음과같이 getTyep() 메소드를 호출하면 된다.
public static final int TYPE_WIFI = 1;
public static final int TYPE_MOBILE = 2;
public static final int TYPE_NOT_CONNECTED = 3;
public static int getConnectivityStatus(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) {
return TYPE_MOBILE;
} else if (type == ConnectivityManager.TYPE_WIFI) {
return TYPE_WIFI;
}
}
return TYPE_NOT_CONNECTED;
}
출처 : 부스트코스 강의
+ 추가로 공식 홈페이지에 설명이 너무 잘 되어있어서 링크.
https://developer.android.com/training/monitoring-device-state/connectivity-monitoring?hl=ko
'Android > Basic' 카테고리의 다른 글
[Android] 음악 재생하기 (0) | 2018.08.28 |
---|---|
[Android] 카메라로 사진 촬영하기 (2) | 2018.08.27 |
[Android] SQLiteOpenHelper (0) | 2018.07.31 |
[Android] 웹에서 Image 다운로드 (0) | 2018.07.09 |
[Android] Gson을 이용한 JSON 변환 (0) | 2018.07.07 |