투케이2K

514. (Android/Java) [android 12 / target 31] [유틸 파일] getHotspotEnable : 모바일 핫스팟 (Hotspot) 활성 상태 확인 본문

Android

514. (Android/Java) [android 12 / target 31] [유틸 파일] getHotspotEnable : 모바일 핫스팟 (Hotspot) 활성 상태 확인

투케이2K 2023. 3. 6. 20:43

[개발 환경 설정]

개발 툴 : AndroidStudio

 

[소스 코드]

    // -----------------------------------------------------------------------------------------
    // TODO [SEARCH FAST] : [getHotspotEnable] : 핫스팟 활성 상태 확인
    // -----------------------------------------------------------------------------------------
    public static Boolean getHotspotEnable(Context mContext){

        /**
         * // -----------------------------------------
         * [getHotspotEnable 메소드 설명]
         * // -----------------------------------------
         * 1. 현재 사용자 모바일 디바이스 핫스팟 활성 상태 확인
         * // -----------------------------------------
         * 2. 호출 방법 :
         *
         * C_StateCheck.getHotspotEnable(A_Main.this);
         * // -----------------------------------------
         * 3. 리턴 데이터 :
         *
         * 핫스팟 켜진 상태인 경우 경우 = true / 아니면 false
         * // -----------------------------------------
         * */


        // [리턴 변수 선언 실시]
        boolean returnData = false;
        int actualState = 0;


        // [로직 처리 실시]
        try {
            WifiManager mWifiManager = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE);
            Method method = mWifiManager.getClass().getDeclaredMethod("getWifiApState");
            method.setAccessible(true);

            actualState = (Integer) method.invoke(mWifiManager, (Object[]) null);

            if (actualState == 10){ // [AP_STATE_DISABLING]

            }
            else if (actualState == 11){ // [AP_STATE_DISABLED]

            }
            else if (actualState == 12){ // [AP_STATE_ENABLING]

            }
            else if (actualState == 13){ // [AP_STATE_ENABLED]
                
                // [리턴 결과 삽입]
                returnData = true;
            }
            else if (actualState == 14){ // [AP_STATE_FAILED]

            }
            else {

            }

        }
        catch (Exception e){
            e.printStackTrace();
            actualState = -1;
        }


        // [로그 출력 실시]
        //*
        S_Log.ltd("================================================");
        S_Log.cnt("["+ACTIVITY_NAME+" >> "+C_Util.getNowMethod(1)+" :: 현재 사용자 모바일 디바이스 핫스팟 활성 상태 확인]");
        S_Log.cnt("-----------------------------------------");
        S_Log.cnt("[actualState :: "+String.valueOf(actualState)+"]");
        S_Log.cnt("-----------------------------------------");
        S_Log.cnt("[RETURN :: "+String.valueOf(returnData)+"]");
        S_Log.lbd("================================================");
        // */


        // [리턴 반환 실시]
        return returnData;
    }
 

[결과 출력]

 

D///===========//: ================================================
I/: [C_StateCheck >> getHotspotEnable :: 현재 사용자 모바일 디바이스 핫스팟 활성 상태 확인]
I/: -----------------------------------------
I/: [actualState :: 11]
I/: -----------------------------------------
I/: [RETURN :: false]
D///===========//: ================================================

 

반응형
Comments