본문 바로가기
블로그 이미지

방문해 주셔서 감사합니다! 항상 행복하세요!

  
   - 문의사항은 메일 또는 댓글로 언제든 연락주세요.
   - "해줘","답 내놔" 같은 질문은 답변드리지 않습니다.
   - 메일주소 : lts06069@naver.com


기타/Android

안드로이드 티라미수(TIRAMISU) 읽기 쓰기 권한 설정

야근없는 행복한 삶을 위해 ~
by 마샤와 곰 2023. 6. 21.

 

안드로이드 13버전티라미수(tiramisu)에서 저장소에 대한 읽기와 쓰기 권한 설정이 변화가 되었습니다.

기존에 핸드폰의 저장소에 읽기, 쓰기 권한을 설정하려면 아래처럼 하였습니다.

* 설정 : Manifest.xml

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="28"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"  />

* 권한 묻기 : *.kt

//읽기 쓰기 권한 종류 
var permissions = arrayOf(
    android.Manifest.permission.WRITE_EXTERNAL_STORAGE,
    android.Manifest.permission.READ_EXTERNAL_STORAGE
)

//권한 물어보기
registerForActivityResult(
    ActivityResultContracts.RequestMultiplePermissions()
) { isGranted ->
    //권한 결과 처리..
}.launch(permissions)

 

그런데 13으로 와서 저렇게 하면...권한에 대한 접근결과 값이 false가 나오는 현상을 만나게 됩니다.

이를 해결하기 위해서는 아래처럼 내용을 변경 해 주도록 합니다.

 

* 설정 : Manifest.xml

<!--
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="28"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"  />
-->

<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />

* 권한 묻기 : *.kt

//읽기 쓰기 권한 종류 
var permissions = arrayOf(
    //android.Manifest.permission.WRITE_EXTERNAL_STORAGE,
    //android.Manifest.permission.READ_EXTERNAL_STORAGE
    android.Manifest.permission.READ_MEDIA_AUDIO,
    android.Manifest.permission.READ_MEDIA_VIDEO,
    android.Manifest.permission.READ_MEDIA_IMAGES    
)

//권한 물어보기
registerForActivityResult(
    ActivityResultContracts.RequestMultiplePermissions()
) { isGranted ->
    //권한 결과 처리..
}.launch(permissions)

 

기존과 다르게 저장소에 대한 접근 권한이 세부적으로 바뀐것을 볼 수 있습니다.

역시나 펌웨어의 버전이 올라가면 이러한 버전에 대한 조건이 계속해서 붙는 특성은 어쩔수가 없는 것 같습니다.

아래는 안드로이드 13에 대한 변경사항이 소개된 내용 입니다.

https://developer.android.com/about/versions/13/behavior-changes-13?hl=ko 

 

동작 변경사항: Android 13 이상을 타겟팅하는 앱  |  Android 개발자  |  Android Developers

Android 13 이상을 타겟팅하는 앱에 영향을 미치는 Android 13의 변경사항을 알아봅니다.

developer.android.com

 

간단하게 살펴본 안드로이드 티라미수(TIRAMISU) 읽기 쓰기 권한 설정에 대한 내용 이였습니다.

 

 

반응형

'기타 > Android' 카테고리의 다른 글

Android Jetpack Scaffold 영역 짤림  (0) 2023.06.15
안드로이드 usesCleartextTraffic  (0) 2023.06.15
Kotlin Room적용시 주의해야 될 사항  (0) 2020.08.19
Android Q(안드로이드 10)  (0) 2019.08.13
구글 마켓 정책 변경(2019)  (0) 2019.05.02
* 위 에니메이션은 Html의 캔버스(canvas)기반으로 동작하는 기능 입니다. Html 캔버스 튜토리얼 도 한번 살펴보세요~ :)
* 직접 만든 Html 캔버스 애니메이션 도 한번 살펴보세요~ :)

댓글