2025년 3월 27일부터 AOSP를 빌드하고 기여하려면 aosp-main
대신 android-latest-release
를 사용하는 것이 좋습니다. 자세한 내용은 AOSP 변경사항을 참고하세요.
전체 화면 인텐트 제한
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
광고 스팸과 사용자 인증 정보 피싱을 방지하기 위해 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
|
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-27(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-07-27(UTC)"],[],[],null,["# Full-screen intent limits\n\nTo prevent ad spam and credential phishing, starting with Android 14,\nthe default [`USE_FULL_SCREEN_INTENT`](https://developer.android.com/reference/android/Manifest.permission#USE_FULL_SCREEN_INTENT)\npermission to send full-screen notifications can be granted only to apps that\nprovide calling and alarm functionalities.\n\nFor all apps being installed on Android 14, the\n[`USE_FULL_SCREEN_INTENT`](https://developer.android.com/reference/android/Manifest.permission#USE_FULL_SCREEN_INTENT)\npermission is enabled by default. Upon installation, the Google Play Store\nrevokes the full-screen intent (FSI) permission for apps that do not have\ncalling or alarm functionalities.\n\nFor apps installed on phones running versions\nAndroid 13 or lower, the\n[`USE_FULL_SCREEN_INTENT`](https://developer.android.com/reference/android/Manifest.permission#USE_FULL_SCREEN_INTENT)\npermission remains enabled by default.\n\nUser permission\n---------------\n\nWith Android 14, apps can use [`NotificationManager#canUseFullScreenIntent()`](https://developer.android.com/reference/android/app/NotificationManager#canUseFullScreenIntent())\nto check if they can send full-screen notifications. To get user permission to\nsend full-screen notifications, apps use [`ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT`](https://developer.android.com/reference/android/provider/Settings#ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT)\nto launch the **Manage full screen intents** setting as shown in Figure 1:\n\n**Figure 1.** UI for enabling apps to send full-screen intents.\n\nThe **Manage full screen intents** setting is in the **Settings** menu under\n**Special App Access**. With this UI, users can revoke this permission if needed.\n\nOEM requirements\n----------------\n\nIn Android 14, FSI permissions for apps are enabled by\ndefault. OEMs must specify which apps qualify for FSI permissions. OEMs must\nensure that third-party app stores set the initial grant states of FSI\npermissions for their apps using\n[`PackageInstaller.SessionParams`](https://developer.android.com/reference/android/content/pm/PackageInstaller.SessionParams),\nspecifically with the [`PERMISSION_STATE_DEFAULT`](https://developer.android.com/reference/android/content/pm/PackageInstaller.SessionParams#PERMISSION_STATE_DEFAULT), [`PERMISSION_STATE_DENIED`](https://developer.android.com/reference/android/content/pm/PackageInstaller.SessionParams#PERMISSION_STATE_DENIED), and [`PERMISSION_STATE_GRANTED`](https://developer.android.com/reference/android/content/pm/PackageInstaller.SessionParams#PERMISSION_STATE_GRANTED)\nparameters.\n\nValidation\n----------\n\nUse the CTS Verifier test in [`NotificationFullScreenIntentVerifierActivity.java`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/apps/CtsVerifier/src/com/android/cts/verifier/notifications/NotificationFullScreenIntentVerifierActivity.java),\nand the CTS test in [`NotificationManagerTest.java`](https://cs.android.com/android/platform/superproject/+/android-latest-release:cts/tests/app/src/android/app/cts/NotificationManagerTest.java;drc=ed156b1d4a7d91675dba1adb9191a92cf439dab0;l=148)\nto validate the FSI limits.\n\n### Manual tests\n\nFollow these steps to manually test FSI limits on your app:\n\n1. Declare [`USE_FULL_SCREEN_INTENT`](https://developer.android.com/reference/android/Manifest.permission#USE_FULL_SCREEN_INTENT) in your app's `AndroidManifest.xml` file.\n2. Use [`ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT`](https://developer.android.com/reference/android/provider/Settings#ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT) to manage settings to turn FSI on or off.\n3. On your test phone, manually toggle the user permission for full-screen notifications as shown in Figure 1.\n4. Send an FSI notification.\n5. Validate the appearance of the full-screen notification for the following combinations of FSI permission and display modes:\n\n|--------------------|----------------------------------------------------------|----------------------------------------------------------|---------------------------------------------------|-------------------------------|\n| **FSI permission** | **Unlocked screen** | **Locked screen** | **Off screen** | **Always-on display (AOD)** |\n| Granted by user | Persistent heads-up notification (HUN) with pill buttons | Launch FSI | Launch FSI | Launch FSI |\n| Denied by user | HUN with pill buttons for 60s | HUN with pill buttons shows up first in the list for 60s | AOD turns on, shows HUN with pill buttons for 60s | HUN with pill buttons for 60s |"]]