Notice
Recent Posts
Recent Comments
Link
투케이2K
905. (Android/Java) ConnectivityManager , NetworkCapabilities 사용해 현재 휴대폰 인터넷 사용 가능 상태 확인 본문
Android
905. (Android/Java) ConnectivityManager , NetworkCapabilities 사용해 현재 휴대폰 인터넷 사용 가능 상태 확인
투케이2K 2024. 11. 21. 20:50[개발 환경 설정]
개발 툴 : AndroidStudio
개발 언어 : Java / Kotlin
[소스 코드]
// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------
- 언어 : Java
- 개발 툴 : Android Studio
- 구분 : 간단 소스
- 참고 :
>> 모바일 셀룰러 및 인터넷 사용 가능한 와이파이는 true , 와이파이는 연결 되었지만 인터넷 사용이 불가능 한 로컬 AP 연결 인 경우 false
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[소스 코드]
// --------------------------------------------------------------------------------------
// [ConnectivityManager 생성]
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
// [안드로이드 버전 분기 처리]
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
Network network = cm.getActiveNetwork();
NetworkCapabilities networkCapabilities = cm.getNetworkCapabilities(network);
// [인터넷 사용가능 하고 , 유효한 연결인지 확인 수행]
boolean hasCapabilityInternet = networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);
boolean hasCapabilityValidated = networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED);
// [and 결과로 인터넷 사용 가능한 네트워크 환경 상태 체크]
boolean result = (hasCapabilityInternet && hasCapabilityValidated);
S_Log._W_("현재 연결된 네트워크 인터넷 사용 가능 상태 확인", new String[]{
"result :: " + String.valueOf(result)
});
}
// -----------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[결과 출력]
// --------------------------------------------------------------------------------------
W///===========//: ================================================
I/: [LOG :: CLASS PLACE :: com.example.javaproject.A_Intro$1.onClick(A_Intro.java:362)]
I/: ----------------------------------------------------
I/: [LOG :: NOW TIME :: 2024-11-21 13:58:51 목요일]
I/: ----------------------------------------------------
I/: [LOG :: DESCRIPTION :: 현재 연결된 네트워크 인터넷 사용 가능 상태 확인]
I/: ----------------------------------------------------
I/: [LOG :: result :: true]
W///===========//: ================================================
// --------------------------------------------------------------------------------------
반응형
'Android' 카테고리의 다른 글
Comments