Limiti per intent a schermo intero

Per prevenire lo spam negli annunci e il phishing delle credenziali, a partire da Android 14: il valore predefinito di USE_FULL_SCREEN_INTENT l'autorizzazione a inviare notifiche a schermo intero può essere concessa solo alle app che offrono funzionalità di chiamata e sveglia.

Per tutte le app installate su Android 14, USE_FULL_SCREEN_INTENT è abilitata per impostazione predefinita. Dopo l'installazione, il Google Play Store revoca l'autorizzazione per intent a schermo intero (FSI) per le app che non dispongono funzionalità di chiamata o sveglia.

Per le app installate su smartphone con versioni precedenti ad Android 13: USE_FULL_SCREEN_INTENT rimane attiva per impostazione predefinita.

Autorizzazione dell'utente

Con Android 14, le app possono utilizzare NotificationManager#canUseFullScreenIntent() per controllare se possono inviare notifiche a schermo intero. Per ottenere l'autorizzazione dell'utente per invio di notifiche a schermo intero, le app utilizzano ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT per avviare l'impostazione Gestisci gli intent a schermo intero, come mostrato nella Figura 1:

UI fsi

Figura 1. UI per consentire alle app di inviare intent a schermo intero.

L'impostazione Gestisci intent a schermo intero si trova nel menu Impostazioni della sezione Accesso speciale alle app. Con questa UI, gli utenti possono revocare questa autorizzazione, se necessario.

Requisiti OEM

In Android 14, le autorizzazioni FSI per le app vengono attivate predefinito. Gli OEM devono specificare quali app sono idonee per le autorizzazioni FSI. Gli OEM devono assicurati che gli store di terze parti impostino gli stati di concessione iniziali dei file FSI autorizzazioni per le loro app PackageInstaller.SessionParams, in particolare con PERMISSION_STATE_DEFAULT, PERMISSION_STATE_DENIED e PERMISSION_STATE_GRANTED parametri.

Convalida

Utilizza il test di verifica CTS in NotificationFullScreenIntentVerifierActivity.java, e il test CTS in NotificationManagerTest.java per convalidare i limiti previsti per i file FSI.

Test manuali

Segui questi passaggi per testare manualmente i limiti FSI sulla tua app:

  1. Dichiara USE_FULL_SCREEN_INTENT nel file AndroidManifest.xml dell'app.
  2. Utilizza ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT per gestire le impostazioni per attivare o disattivare FSI.
  3. Sullo smartphone di test, attiva manualmente l'autorizzazione utente per la modalità a schermo intero notifiche come mostrato nella Figura 1.
  4. Invia una notifica FSI.
  5. Convalida l'aspetto della notifica a schermo intero per quanto segue combinazioni di autorizzazione FSI e modalità di visualizzazione:
Autorizzazione FSI Schermo sbloccato Schermata di blocco Fuori schermo Display sempre attivo
Concesso dall'utente Notifica di avviso persistente (HUN) con pulsanti pillole Avvia FSI Avvia FSI Avvia FSI
Rifiutato dall'utente HUN con pulsanti a pillole per anni '60 La HUN con pulsanti a forma di pillola viene visualizzata per prima nell'elenco dopo 60 secondi Il display sempre attivo si attiva e mostra HUN con i pulsanti a pillole per 60 secondi HUN con pulsanti a pillole per anni '60