투케이2K

206. (kotlin/코틀린) [유틸 파일] getCameraPermisseionEnable : CAMERA 카메라 권한 부여 상태 확인 본문

Kotlin

206. (kotlin/코틀린) [유틸 파일] getCameraPermisseionEnable : CAMERA 카메라 권한 부여 상태 확인

투케이2K 2023. 1. 28. 11:58

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Kotlin

 

[소스 코드]

        // ----------------------------------------------------------------------------------
        // TODO [권한 상태 묻기 배열 선언]
        // ----------------------------------------------------------------------------------
        val PERMISSION_CODE = 999

        val PERMISSION_ARRAY = arrayOf(

            Manifest.permission.READ_PHONE_STATE,  // [0] : [폰 상태]

            Manifest.permission.BLUETOOTH,  // [1] : [블루투스]
            Manifest.permission.BLUETOOTH_ADMIN,  // [2] : [블루투스]

            Manifest.permission.ACCESS_COARSE_LOCATION,  // [3] : [위치 권한]
            Manifest.permission.ACCESS_FINE_LOCATION,  // [4] : [위치 권한]

            Manifest.permission.WRITE_EXTERNAL_STORAGE,  // [5] : [외부 저장소 쓰기]
            Manifest.permission.READ_EXTERNAL_STORAGE,  // [6] : [외부 저장소 읽기]

            Manifest.permission.CAMERA,  // [7] : [카메라]

            // TODO [안드로이드 12 - 블루투스 정책관련 대응]
            Manifest.permission.BLUETOOTH_SCAN,  // [8] : 근처기기 (안드로이드 12 블루투스 정책 관련 대응)
            Manifest.permission.BLUETOOTH_ADVERTISE,  // [9] : 블루투스 (안드로이드 12 블루투스 정책 관련 대응)
            Manifest.permission.BLUETOOTH_CONNECT // [10] : 블루투스 (안드로이드 12 블루투스 정책 관련 대응)
        )





        // ----------------------------------------------------------------------------------
        // TODO [SEARCH FAST] : [CAMERA 카메라 권한 부여 상태 확인]
        // ----------------------------------------------------------------------------------
        fun getCameraPermisseionEnable(mContext: Context?): Boolean {

            // [Context 지정]
            context = mContext

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

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

                ///*
                if (ContextCompat.checkSelfPermission(mContext!!, PERMISSION_ARRAY[7]) == 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