Notice
Recent Posts
Recent Comments
Link
투케이2K
907. (Android/Java) [targetSdk 30] 안드로이드 S , 12 버전 미만 WifiManager getConnectionInfo 와이파이 정보 확인 방법 본문
Android
907. (Android/Java) [targetSdk 30] 안드로이드 S , 12 버전 미만 WifiManager getConnectionInfo 와이파이 정보 확인 방법
투케이2K 2024. 11. 29. 09:47[개발 환경 설정]
개발 툴 : AndroidStudio
개발 언어 : Java / Kotlin
[소스 코드]
// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------
- 언어 : Java
- 개발 툴 : Android Studio
- 구분 : 간단 소스
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[소스 코드]
// --------------------------------------------------------------------------------------
try {
/**
* -------------------------------------------------------
* [요약 설명]
* -------------------------------------------------------
* WifiManager getConnectionInfo 메소드는 API 레벨 31에서 더 이상 사용되지 않습니다.
* -------------------------------------------------------
* WifiManager getConnectionInfo 메소드는 Build.VERSION_CODES S (안드로이드 12) 부터 ConnectivityManager 사용해 대체로 사용할 수 있습니다
* -------------------------------------------------------
* 참고 사이트 : https://developer.android.com/reference/android/net/wifi/WifiManager
* -------------------------------------------------------
* */
// [WifiManager 객체 생성]
WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);
// [안드로이드 특정 OS 범위 기기에서만 동작 되도록 지정]
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.S) { // TODO [API 30 : Android Os 11 까지 사용 가능]
if (wifiManager.isWifiEnabled() == true){ // TODO [활성 상태 인 경우]
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
String ssid = wifiInfo.getSSID(); // [" " 특수 문자 내에 SSID 표시]
String bssid = wifiInfo.getBSSID();
int wIp = wifiInfo.getIpAddress();
String ipAddress = String.format("%d.%d.%d.%d", (wIp & 0xff), (wIp >> 8 & 0xff), (wIp >> 16 & 0xff), (wIp >> 24 & 0xff));
String rssi = String.valueOf(wifiInfo.getRssi());
String networkId = String.valueOf(wifiInfo.getNetworkId());
S_Log._W_("WifiManager :: getConnectionInfo", new String[]{
"ssid :: " + ssid,
"bssid :: " + bssid,
"ipAddress :: " + ipAddress,
"rssi :: " + rssi,
"networkId :: " + networkId
});
}
else { // TODO [비활성 상태 인 경우]
S_Log._E_("WifiManager :: isWifiEnabled False", null);
}
}
else {
S_Log._E_("WifiManager :: Android Os Version Error", null);
}
}
catch (Exception e){
e.printStackTrace();
}
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[결과 출력]
// --------------------------------------------------------------------------------------
W///===========//: ================================================
I/: [LOG :: CLASS PLACE :: com.example.javaproject.A_Intro$1.onClick(A_Intro.java:381)]
I/: ----------------------------------------------------
I/: [LOG :: NOW TIME :: 2024-11-27 08:39:42 수요일]
I/: ----------------------------------------------------
I/: [LOG :: DESCRIPTION :: WifiManager :: getConnectionInfo]
I/: ----------------------------------------------------
I/: [LOG :: ssid :: "KKH"]
I/: ----------------------------------------------------
I/: [LOG :: bssid :: 36:61:0f:28:bb:86]
I/: ----------------------------------------------------
I/: [LOG :: ipAddress :: 192.168.1.124]
I/: ----------------------------------------------------
I/: [LOG :: rssi :: -60]
I/: ----------------------------------------------------
I/: [LOG :: networkId :: 2]
W///===========//: ================================================
// --------------------------------------------------------------------------------------
반응형
'Android' 카테고리의 다른 글
Comments