투케이2K

228. (kotlin/코틀린) [android 13 / target 33] [유틸 파일] getNotificationPermisseionEnable : 알림 권한 상태 확인 본문

Kotlin

228. (kotlin/코틀린) [android 13 / target 33] [유틸 파일] getNotificationPermisseionEnable : 알림 권한 상태 확인

투케이2K 2023. 3. 12. 18:28

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Kotlin

 

[소스 코드]

 

        // ----------------------------------------------------------------------------------
        // TODO [SEARCH FAST] : [Android 13] : [알림 권한 상태 확인]
        // ----------------------------------------------------------------------------------
        fun getNotificationPermisseionEnable(mContext: Context?): Boolean {

            /**
             * -------------------------------------------
             * [필요 퍼미션 설정]
             *
             * <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
             * <uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" />
             * -------------------------------------------
             * [PERMISSION_ARRAY 선언 데이터]
             *
             * Manifest.permission.POST_NOTIFICATIONS
             * -------------------------------------------
             * */

            // [Context 지정]
            context = mContext

            // [초기 리턴 변수 선언]
            var resultData = true

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

                ///*
                if (ContextCompat.checkSelfPermission(mContext!!, PERMISSION_ARRAY[16]) == PackageManager.PERMISSION_GRANTED) {
                    S_Log.ltw("================================================")
                    S_Log.cnt("[" + ACTIVITY_NAME + " >> " + C_Util.getNowMethod(1) + " :: 알림 권한 정상 부여 상태]")
                    S_Log.lbw("================================================")

                    // [리턴 결과 삽입 실시]
                    resultData = true
                }
                else {
                    S_Log.lte("================================================")
                    S_Log.cnt("[" + ACTIVITY_NAME + " >> " + C_Util.getNowMethod(1) + " :: 알림 권한 부여 안된 상태]")
                    S_Log.lbe("================================================")

                    // [리턴 결과 삽입 실시]
                    resultData = false
                }

            }
            catch (e: Exception) {
                e.printStackTrace()
            }

            // [결과 리턴 실시]
            return resultData
        }

 

반응형
Comments