투케이2K

906. (Android/Java) [targetSdk 28] 안드로이드 Q , 10 버전 미만 WifiManager setWifiEnabled 와이파이 강제 활성 및 비활성 처리 본문

Android

906. (Android/Java) [targetSdk 28] 안드로이드 Q , 10 버전 미만 WifiManager setWifiEnabled 와이파이 강제 활성 및 비활성 처리

투케이2K 2024. 11. 29. 09:41

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Java / Kotlin

 

[소스 코드]

 

// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------

- 언어 : Java

- 개발 툴 : Android Studio

- 구분 : 간단 소스

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[소스 코드]
// --------------------------------------------------------------------------------------

  try {

    /**
      * -------------------------------------------------------
      * [요약 설명]
      * -------------------------------------------------------
      * WifiManager setWifiEnabled 메소드는 API 레벨 29에서 더 이상 사용되지 않습니다.
      * -------------------------------------------------------
      * WifiManager setWifiEnabled 메소드는 Build.VERSION_CODES Q부터 애플리케이션은 Wi-Fi를 활성화/비활성화할 수 없습니다.
      * -------------------------------------------------------
      * 참고 사이트 : https://developer.android.com/reference/android/net/wifi/WifiManager
      * -------------------------------------------------------
      * */

    // [WifiManager 객체 생성]
    WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);

    // [안드로이드 하위 기기에서만 동작 되도록 지정]
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) { // TODO [API 29 : Android Os 10]

        if (wifiManager.isWifiEnabled() == true){ // TODO [활성 상태 인 경우]
            wifiManager.setWifiEnabled(false); // [True >> False :: 비활성 처리]
        }
        else { // TODO [비활성 상태 인 경우]
            wifiManager.setWifiEnabled(true); // [False >> True :: 활성 처리]
        }
    }
    else {
        S_Log._E_("WifiManager :: Android Os Version Error", null);
    }
  }
  catch (Exception e){
    e.printStackTrace();
  }

// --------------------------------------------------------------------------------------

 

반응형
Comments