기록

[issue] java.lang.SecurityException 본문

Moblie/Android

[issue] java.lang.SecurityException

youngyin 2021. 12. 7. 00:16

Glide 사용시 java.lang.securityexception: com.foo.garosero has no access to content://media/external~

오류가 발생했다. 코드를 뜯어 보니 권한 설정에 문제가 있었다.

// permission : build.gradle(:app)
 implementation 'gun0912.ted:tedpermission:2.2.1'
    
// 권한 설정 : MainAcitivity.java
PermissionListener permissionListener = new PermissionListener() {
    @Override
    public void onPermissionGranted() {
        Toast.makeText(MainActivity.this, "권한 허가", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onPermissionDenied(List<String> deniedPermissions) {
        Toast.makeText(MainActivity.this, "권한 거부", Toast.LENGTH_SHORT).show();
    }
};
TedPermission.with(this)
        .setPermissionListener(permissionListener)
        .setRationaleMessage("이미지를 등록하기 위해서는 접근 권한이 필요해요")
        .setDeniedMessage("[설정] > [권한] 에서 권한을 허용할 수 있어요.")
        .setPermissions(new String[]{Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.INTERNET})
        .check();

다음과 같이 TedPermission을 사용해 문제를 해결했다.

Comments