투케이2K

423. (kotlin/코틀린) [유틸 파일] getAppWhiteListReg : 앱 화이트 리스트 등록 여부 체크 - app white list 본문

Kotlin

423. (kotlin/코틀린) [유틸 파일] getAppWhiteListReg : 앱 화이트 리스트 등록 여부 체크 - app white list

투케이2K 2023. 10. 6. 10:35

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Kotlin

 

[소스 코드]

 

        // -----------------------------------------------------------------------------------------
        // TODO [SEARCH FAST] : [RETURN] getAppWhiteListReg : 앱 화이트 리스트 등록 여부 체크
        // -----------------------------------------------------------------------------------------
        fun getAppWhiteListReg(mContext: Context): Boolean {

            /**
             * // -----------------------------------------
             * [getAppWhiteListReg 메소드 설명]
             * // -----------------------------------------
             * 1. 앱 화이트 리스트 등록 여부 체크
             * // -----------------------------------------
             * 2. 호출 방식 :
             *
             * C_App.getAppWhiteListReg(A_Intro@this)
             *
             * // -----------------------------------------
             * 3. 리턴 데이터 : 앱 절전 제외 등록 된 경우 true / 아니면 false
             * // -----------------------------------------
             * 4. 참고 :
             *
             * 도즈와 어플 대기모드의 대상으로부터 제외되는 목록 리스트 입니다
             * // -----------------------------------------
             */


            // [리턴 값 선언]
            var returnData = false
            var m_log = ""


            // [로직 처리 실시]
            try {

                if (mContext != null) {

                    // [PowerManager 생성]
                    val pm = mContext.getSystemService(Context.POWER_SERVICE) as PowerManager


                    // [마시멜로우 이상 버전 체크 및 해당 앱이 화이트 리스트에 등록 되었는지 확인]
                    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                        returnData = pm.isIgnoringBatteryOptimizations(mContext.packageName)
                    }

                } else {
                    m_log = "[ERROR] : Input Data Is Null"
                }

            } catch (e: Exception) {
                S_Log._printStackTrace_(null, S_FinalMsg.LOG_BUG_STATE, null, e)
                m_log = "[EXCEPTION] : " + e.message.toString()
            }


            // [로그 출력 실시]
            ///*
            // ===============================================================
            S_Log._D_("앱 화이트 리스트 등록 여부 체크", arrayOf(
                "M_LOG :: $m_log",
                "RETURN :: $returnData"
            ))
            // ===============================================================
            // */


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

 


 

반응형
Comments