A partir de 27 de março de 2025, recomendamos usar android-latest-release
em vez de aosp-main
para criar e contribuir com o AOSP. Para mais informações, consulte Mudanças no AOSP.
Limites de intent para tela cheia
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Para evitar spam de anúncios e phishing de credenciais, no
Android 14 e versões mais recentes, a permissão
padrão USE_FULL_SCREEN_INTENT
para enviar notificações em tela cheia só pode ser concedida a apps que
ofereçam funcionalidades de chamada e alarme.
Para todos os apps instalados no Android 14, a permissão
USE_FULL_SCREEN_INTENT
é ativada por padrão. Após a instalação, a Google Play Store
revoga a permissão de intent para tela cheia (FSI) de apps que não têm
funcionalidades de chamada ou alarme.
Para apps instalados em smartphones com versões
do Android 13 ou anteriores, a permissão
USE_FULL_SCREEN_INTENT
continua ativada por padrão.
Permissão do usuário
No Android 14, os apps podem usar NotificationManager#canUseFullScreenIntent()
para verificar se podem enviar notificações em tela cheia. Para receber a permissão do usuário para
enviar notificações em tela cheia, os apps usam ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT
para iniciar a configuração Gerenciar intents de tela cheia, conforme mostrado na Figura 1:
Figura 1. Interface para permitir que os apps enviem intents de tela cheia.
A configuração Gerenciar intents em tela cheia está no menu Configurações em
Acesso especial a apps. Com essa interface, os usuários podem revogar essa permissão, se necessário.
Requisitos do OEM
No Android 14, as permissões de FSI para apps são ativadas por
padrão. Os OEMs precisam especificar quais apps se qualificam para as permissões de FSI. Os OEMs precisam
garantir que as app stores de terceiros definam os estados de concessão iniciais das permissões
de FSI para os apps usando
PackageInstaller.SessionParams
,
especificamente com os parâmetros
PERMISSION_STATE_DEFAULT
, PERMISSION_STATE_DENIED
e PERMISSION_STATE_GRANTED
.
Validação
Use o teste do CTS Verifier em NotificationFullScreenIntentVerifierActivity.java
e o teste CTS em NotificationManagerTest.java
para validar os limites de FSI.
Testes manuais
Siga estas etapas para testar manualmente os limites de FSI no seu app:
- Declare
USE_FULL_SCREEN_INTENT
no arquivo AndroidManifest.xml
do app.
- Use
ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT
para gerenciar as configurações e ativar ou desativar a FSI.
- No smartphone de teste, mude manualmente a permissão do usuário para notificações
em tela cheia, conforme mostrado na Figura 1.
- Enviar uma notificação de FSI.
- Valide a aparência da notificação de tela cheia para as seguintes
combinações de permissão de FSI e modos de exibição:
Permissão de FSI
|
Tela desbloqueada
|
Tela bloqueada
|
Fora da tela
|
Tela sempre ativada (AOD)
|
Concedido pelo usuário
|
Notificação de alerta persistente (HUN) com botões de pílula
|
Iniciar o FSI
|
Iniciar o FSI
|
Iniciar o FSI
|
Negado pelo usuário
|
HUN com botões de pílula para 60s
|
O HUN com botões de pílula aparece primeiro na lista por 60 segundos
|
O AOD é ativado, mostrando HUN com botões de pílula por 60 segundos
|
HUN com botões de pílula para 60s
|
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-07-27 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 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 |"]]