투케이2K

539. (Android/Java) [유틸 파일] getFileAccessPermisseionEnable : Android 11 이상 파일 액세스 권한 부여 상태 확인 본문

Android

539. (Android/Java) [유틸 파일] getFileAccessPermisseionEnable : Android 11 이상 파일 액세스 권한 부여 상태 확인

투케이2K 2023. 4. 9. 18:22

[개발 환경 설정]

개발 툴 : AndroidStudio

 

[소스 코드]

    // -----------------------------------------------------------------------------------------
    // TODO [SEARCH FAST] : [Android 11] : [파일 액세스 권한 부여 상태 확인]
    // -----------------------------------------------------------------------------------------
    public static boolean getFileAccessPermisseionEnable(Context mContext){

        /**
         * -------------------------------------------
         * [필요 퍼미션 설정]
         *
         * <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
         * -------------------------------------------
         * 권한 부여 확인 : Environment.isExternalStorageManager()
         * -------------------------------------------
         * 주의 : 구글 플레이스토어 등록 시 정책 상 업데이트 거절이 될 수 있습니다
         * -------------------------------------------
         * */

        // [Context 지정]
        context = mContext;

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

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

            ///*
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R){ // [안드로이드 11 이상]

                if (Environment.isExternalStorageManager() == true){
                    S_Log.ltw("================================================");
                    S_Log.cnt("["+ACTIVITY_NAME+" >> "+C_Util.getNowMethod(1)+" :: Android 11 이상 >> 권한 부여 확인]");
                    S_Log.lbw("================================================");

                    // [리턴 결과 삽입 실시]
                    resultData = true;
                }
                else {
                    S_Log.ltw("================================================");
                    S_Log.cnt("["+ACTIVITY_NAME+" >> "+C_Util.getNowMethod(1)+" :: Android 11 이상 >> 권한 부여 안됨]");
                    S_Log.lbw("================================================");

                    // [리턴 결과 삽입 실시]
                    resultData = false;
                }
            }
            else {
                S_Log.ltw("================================================");
                S_Log.cnt("["+ACTIVITY_NAME+" >> "+C_Util.getNowMethod(1)+" :: Android 11 미만 >> 권한 부여 확인]");
                S_Log.lbw("================================================");

                // [리턴 결과 삽입 실시]
                resultData = true;
            }
        }
        catch (Exception e){
            e.printStackTrace();
        }

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

[결과 출력]

 

W///===========//: ================================================
I/: [C_Permission >> getFileAccessPermisseionEnable :: Android 11 이상 >> 권한 부여 확인]
W///===========//: ================================================

 

반응형
Comments