투케이2K

262. (TWOK/ERROR) [Android] gun0912.ted:tedpermission:2.2.x gradle sync error 테드 퍼미션 라이브러리 동기화 에러 본문

투케이2K 에러관리

262. (TWOK/ERROR) [Android] gun0912.ted:tedpermission:2.2.x gradle sync error 테드 퍼미션 라이브러리 동기화 에러

투케이2K 2024. 8. 6. 19:29
반응형

[환경 설정 및 설명]

프로그램 : AndroidStudio

설 명 : [Android] gun0912.ted:tedpermission:2.2.x gradle sync error 테드 퍼미션 라이브러리 동기화 에러

 

[에러 원인]

1. 안드로이드 build.gradle 에서 tedpermission 라이브러리 동기화 실패 이슈 (기존 git 참고 주소 변경 이슈)

 

[해결 방법]

1. 변경 된 github 주소로 build.gradle 파일 implementation 의존성 부여 수행

>> AS-IS : implementation 'gun0912.ted:tedpermission:2.2.2'

>> TO-BE : implementation 'io.github.ParkSangGwon:tedpermission-normal:3.3.0'

2. 변경 된 라이브러리 버전에 맞게 java , kotlin 소스 코드 변경 수행

>> onPermissionDenied 부분 : ArrayList 대신에 List 로 변경 (onPermissionDenied(List<String> deniedPermissions))

>> TedPermission 초기화 부분을 width 에서 create 로 변경 (TedPermission.create())

------------------------------------------------------------------------

  >> 초기화 및 호출 소스 코드 : 

TedPermission.create()
                        .setPermissionListener(permissionlistener) // [퍼미션이 부여 체크 이벤트 리스너 지정]

                        // TODO [AndroidManifest.xml 에 등록된 퍼미션 등록]
                        .setPermissions(
                                // -----------------------------------------
                                // [휴대폰 상태 체크]
                                Manifest.permission.READ_PHONE_STATE,
                                // -----------------------------------------
                        )
                        .check();

------------------------------------------------------------------------

  >> 퍼미션 부여 상태 확인 리스너 : 

    // TODO [퍼미션이 부여 되었는지 확인 메소드]
    static PermissionListener permissionlistener = new PermissionListener() {
        @Override
        public void onPermissionGranted() {
            // ===============================================================
            S_Log._W_("전체 퍼미션 부여 확인 성공", null);
            // ===============================================================

        }
        @Override
        public void onPermissionDenied(List<String> deniedPermissions) {
            // ===============================================================
            S_Log._E_("전체 퍼미션 부여 확인 실패", new String[] {
                    "거부된 권한 :: " + String.valueOf(deniedPermissions.toString())
            });
            // ===============================================================
        }
    };

------------------------------------------------------------------------
 
반응형
Comments