-
Android 13 알아보기 (Target SDK 33 으로 변경)Android & Kotlin 2022. 11. 11. 19:02
목적
target sdk 를 33으로 올림에 있어 꼭 알아야할 부분에 대해 정리해보자
개발 환경 구성
- 안드로이드 스튜디오 업데이트
- SDK 설치
- Tools > SDK Manager > SDK Platforms → Android API 33 다운로드
- Tools > SDK Manager > SDK Tools → Android SDK Build-Tools 33 다운로드
- Android 13 Emulator 세팅
알림 런타임 권한
- Android 13 미만
- 앱 설치시 Notification 을 띄울 수 있었음
- Notification 권한을 갖는 것이 기본
- Android 13 이후
- runtime permission 을 받아야만 notification 을 띄울 수 있음
- Notification 권한이 없는 것이 기본
- POST_NOTIFICATIONS 를 통한 권한 획득 필요
- 13미만 에서 13 이상 으로 업그레이드 시나리오
- notification 비활성화시 → POST_NOTIFICATIONS 권한 off 세팅
- 기본상태 및 활성화 상태시 → POST_NOTIFICATIONS 권한 on 세팅
- 현재 앱 에 적용할 사항
- 알림 기능을 사용하기때문에 Android 13 에 대한 권한 획득 코드 추가가 필요함
- runtime permission 인 만큼 여러 notification을 사용하게 변경 될 경우 적절한 채널 분리가 필요함
세분화 된 미디어 파일 권한
- Android 13 미만
- READ_EXTERNAL_STORAGE 을 통한 읽기 권한 획득 가능
- Android 13 이후
- Image, Video, Audio 각각에 대해 권한을 얻어야함
- READ_MEDIA_IMAGES, READ_MEDIA_VIDEO, READ_MEDIA_AUDIO
- 13 미만 에서 13이상 으로 업그레이드 시나리오
- READ_EXTERNAL_STORAGE 권한 있는 경우: 세분화된 모든 권한을 얻게 됨
- READ_EXTERNAL_STORAGE 권한 없는 경우: 세분화되어 요청하는 런타임 권한 알림 띄움
- 현재 앱 에 적용할 사항 : 현재로서 없음
- 현재까지는 다른 앱에서 만든 미디어 파일에 대한 액세스가 필요 없는 상태로 적용 사항 없음
인텐트 필터가 일치하지 않는 인텐트를 차단
- Android 13 에 대한 암시적 Intent 사용법
- 기존에도 IntentFilter 와 일치할 때만 실행 됐기 때문에 상관 없음
- Android 13 에 대한 명시적 Intent 사용법
- intent-filter 와 동일한 action 및 category 와 일치하는 intent 만들어 사용하기
- action, category 데이터 제외하고 사용하기
https://developer.android.com/about/versions/13/behavior-changes-all#security
동작 변경사항: 모든 앱 | Android 개발자 | Android Developers
모든 앱에 영향을 주는 Android 13의 변경사항을 알아봅니다.
developer.android.com
- 현재 앱 에 적용할 사항 : 현재로서 없음
- 명시적 Intent 사용시 잘못된 인텐트 필터 값을 추가하지 않도록 주의 필요
그 외 변경 사항
WebViews
- 앱 색상 테마가 WebView 에 자동 적용 될 수 있게 됨
BatteryOptimiztions
- 앱 상 배터리 운용 상태가 “Restricted “ 일때 앱이 시작되기전에는 BOOT_COMPLETED , LOCKED_BOOT_COMPLETED 브로드캐스트를 전달 하지 않는다.
Foreground Service Task Manager
- 포그라운드 서비스에 대해서 동작을 정지 시킬 수 있는 버튼이 nofication 에 포함됨
참고
https://developer.android.com/about/versions/13/behavior-changes-13?hl=ko
동작 변경사항: Android 13 이상을 타겟팅하는 앱 | Android 개발자 | Android Developers
Android 13 이상을 타겟팅하는 앱에 영향을 미치는 Android 13의 변경사항을 알아봅니다.
developer.android.com
https://medium.com/tech-takeaways/migrating-my-app-to-android-13-f5ad0649d23d
Migrating My App To Android 13
Lessons Learned from updating my app to targetSdkVersion 33
medium.com
'Android & Kotlin' 카테고리의 다른 글
DialogFragment 오류 정리 (Radius , 크기 지정) (0) 2022.11.28 By 키워드를 이용한 Shared Preference (0) 2022.11.18 [ Android ] Context 와 메모리 릭 (0) 2022.07.27 [ Android ] CallAdapter, SealedClass 를 활용한 레트로핏 응답 처리 (0) 2022.07.12 [ Android ] View 의 이미지 화 (구글 맵 마커 커스터 마이징 예제) (0) 2022.06.20