투케이2K

207. (kotlin/코틀린) [유틸 파일] setCameraPermisseion : CAMERA 카메라 권한 부여 팝업창 호출 본문

Kotlin

207. (kotlin/코틀린) [유틸 파일] setCameraPermisseion : CAMERA 카메라 권한 부여 팝업창 호출

투케이2K 2023. 1. 28. 12:03

[개발 환경 설정]

개발 툴 : 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 setCameraPermisseion(mContext: Context?) {

            // [Context 지정]
            context = mContext

            // [로직 처리 수행 실시]
            try {
                S_Log.ltw("================================================")
                S_Log.cnt("[" + ACTIVITY_NAME + " >> " + C_Util.getNowMethod(1) + " :: 카메라 권한 요청 수행]")
                S_Log.lbw("================================================")

                // TODO [퍼미션 권한 요청 수행 >> 클래스 onRequestPermissionsResult 에서 권한 부여 확인]
                ActivityCompat.requestPermissions(
                    (context as Activity?)!!, arrayOf(PERMISSION_ARRAY[7]),
                    PERMISSION_CODE
                )
            } catch (e: Exception) {
                e.printStackTrace()
            }
        }
 

[결과 출력]


 

반응형
Comments