광고 스팸과 사용자 인증 정보 피싱을 방지하기 위해 Android 14부터 전체 화면 알림을 전송하는 기본 USE_FULL_SCREEN_INTENT 권한은 통화와 알림 기능을 제공하는 앱에만 부여될 수 있습니다.
Android 14에 설치되는 모든 앱의 경우 USE_FULL_SCREEN_INTENT 권한이 기본적으로 사용 설정됩니다. 설치 시 Google Play 스토어는 통화 또는 알림 기능이 없는 앱의 경우 전체 화면 인텐트(FSI) 권한을 취소합니다.
Android 13 이하 버전을 실행하는 휴대전화에 설치된 앱의 경우 USE_FULL_SCREEN_INTENT 권한이 기본적으로 사용 설정된 상태로 유지됩니다.
사용자 권한
Android 14에서는 앱이 NotificationManager#canUseFullScreenIntent()를 사용하여 전체 화면 알림을 전송할 수 있는지 확인합니다. 전체 화면 알림을 전송하는 사용자 권한을 가져오려면 앱에서 그림 1과 같이 ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT를 사용하여 전체 화면 인텐트 관리 설정을 실행하세요.
그림 1. 앱이 전체 화면 인텐트를 전송할 수 있는 UI
전체 화면 인텐트 관리 설정은 특수 앱 액세스 아래 설정 메뉴에 있습니다. 이 UI를 사용하여 필요한 경우 이 권한을 취소할 수 있습니다.
OEM 요구사항
Android 14에서는 앱의 FSI 권한이 기본적으로 사용 설정됩니다. OEM은 FSI 권한을 사용할 수 있는 앱을 지정해야 합니다. OEM은 서드 파티 앱 스토어가 특히 PERMISSION_STATE_DEFAULT, PERMISSION_STATE_DENIED, PERMISSION_STATE_GRANTED 매개변수로 PackageInstaller.SessionParams를 사용하여 앱의 FSI 권한 초기 부여 상태를 설정하도록 해야 합니다.
유효성 검사
NotificationFullScreenIntentVerifierActivity.java에서 CTS 인증 도구 테스트를 사용하고 NotificationManagerTest.java에서 CTS 테스트를 사용하여 FSI 제한을 검증하세요.
수동 테스트
다음 단계를 따라 앱에서 수동으로 FSI 제한을 테스트하세요.
- 앱의
AndroidManifest.xml파일에서USE_FULL_SCREEN_INTENT를 선언합니다. ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT를 사용하여 FSI를 켜거나 끄는 설정을 관리합니다.- 테스트 휴대전화에서 그림 1과 같이 전체 화면 알림용 사용자 권한을 수동으로 전환합니다.
- FSI 알림을 전송합니다.
- 다음과 같은 FSI 권한과 디스플레이 모드의 조합에 관한 전화 화면 알림의 모양을 확인합니다.
| FSI 권한 | 잠금 해제 화면 | 잠금 화면 | 오프스크린 | AOD(항상 켜져 있는 화면) |
| 사용자가 부여함 | 알약 버튼이 있는 지속적인 헤드업 알림(HUN) | FSI 실행 | FSI 실행 | FSI 실행 |
| 사용자가 거부함 | 60초간 알약 버튼이 있는 HUN | 알약 버튼이 있는 HUN이 목록에서 처음으로 60초간 표시됩니다. | AOD가 켜지고 알약 버튼이 있는 HUN이 60초간 표시됩니다. | 60초간 알약 버튼이 있는 HUN |