기존 안드로이드 OS에서는 유저의 동의없이 푸쉬 알림을 띄울 수 있었지만, 안드로이드 13 부터는 다른 permission 들처럼 알람 권한이 새로 생겼다. 알림 권한은 유저 기기의 OS가 13인 경우 모두 해당 된다. 즉 대응을 하지 않으면 유저들이 알림을 받지 못한다.
1. Delcare The Permission
- POST_NOTIFICATIONS (Notification Permission) 은 Target SDK API 33 이상부터 추가 가능
<manifest...>
<uses-permission android:name="android.permission.POST_NOTIFICATIONS">
</manifest>
2. Scenario
- Target SDK API 32 이하의 앱이 Android 13 디바이스에 설치되면 Notification Channel을 등록할 때 자동으로 Notification 권한 요청 팝업이 나옴
- Target SDK API 33 이상의 앱이 Android 13 디바이스에 설치되면 Notification 권한요청을 개발자가 원하는 타이밍에 노출 가능
- Target SDK API 33 이상의 앱이 Android 12 이하 디바이스에 설치되면 기존과 동일하게 Notification 권한 요청 없이 사용 가능
- Target SDK API 32 앱을 33으로 업데이트 시 기존 알림 권한 동의 상태라면 업데이트 이후 기본으로 허용이지만 예외 있음
- 기기에따라 자동으로 허용되지 않고 다시 한 번 권한을 얻어야하는 경우가 있음
- 그렇기 때문에 Notification 권한이 허가되어 있는지 한 번 확인하는 작업을 넣기를 권장함
기존의 앱의 경우에는 notification channel을 등록할 때 자동으로 권한을 요구하는 창이 뜨거나 권한 요청 없이 사용가능했다.
따라서 문제가 되는 것은 targetSdk 33 이상의 앱이 Android 13 디바이스에 설치됐을 경우 권한을 요구하는 기능을 직접 넣어줘야한다.
참고자료
'🐸 Android' 카테고리의 다른 글
FCM Notification 2 - background 에서 푸쉬 알람받기 (0) | 2023.12.12 |
---|---|
[Android] 렌더링 관점에서 효율적인 ListAdapter (1) | 2023.09.07 |
[Android] Fragment의 LifeCycle과 viewLifecycleOwner 뜯어보기 (0) | 2023.08.13 |
[Android] 안드로이드의 Process와 Thread (0) | 2023.08.09 |
[Android] 안드로이드 로컬 데이터베이스에 데이터 저장 (0) | 2023.08.01 |