Full-screen intent limits

To prevent ad spam and credential phishing, starting with Android 14, the default USE_FULL_SCREEN_INTENT permission to send full-screen notifications can be granted only to apps that provide calling and alarm functionalities.

For all apps being installed on Android 14, the USE_FULL_SCREEN_INTENT permission is enabled by default. Upon installation, the Google Play Store revokes the full-screen intent (FSI) permission for apps that do not have calling or alarm functionalities.

For apps installed on phones running versions Android 13 or lower, the USE_FULL_SCREEN_INTENT permission remains enabled by default.

User permission

With Android 14, apps can use NotificationManager#canUseFullScreenIntent() to check if they can send full-screen notifications. To get user permission to send full-screen notifications, apps use ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT to launch the Manage full screen intents setting as shown in Figure 1:

fsi-ui

Figure 1. UI for enabling apps to send full-screen intents.

The Manage full screen intents setting is in the Settings menu under Special App Access. With this UI, users can revoke this permission if needed.

OEM requirements

In Android 14, FSI permissions for apps are enabled by default. OEMs must specify which apps qualify for FSI permissions. OEMs must ensure that third-party app stores set the initial grant states of FSI permissions for their apps using PackageInstaller.SessionParams, specifically with the PERMISSION_STATE_DEFAULT, PERMISSION_STATE_DENIED, and PERMISSION_STATE_GRANTED parameters.

Validation

Use the CTS Verifier test in NotificationFullScreenIntentVerifierActivity.java, and the CTS test in NotificationManagerTest.java to validate the FSI limits.

Manual tests

Follow these steps to manually test FSI limits on your app:

  1. Declare USE_FULL_SCREEN_INTENT in your app's AndroidManifest.xml file.
  2. Use ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT to manage settings to turn FSI on or off.
  3. On your test phone, manually toggle the user permission for full-screen notifications as shown in Figure 1.
  4. Send an FSI notification.
  5. Validate the appearance of the full-screen notification for the following combinations of FSI permission and display modes:
FSI permission Unlocked screen Locked screen Off screen Always-on display (AOD)
Granted by user Persistent heads-up notification (HUN) with pill buttons Launch FSI Launch FSI Launch FSI
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