In Android 7.0 e versioni successive, i dispositivi possono visualizzare più app contemporaneamente utilizzando la modalità multi-finestra. Android supporta tre configurazioni di finestre multiple:
- Senza riquadri consente agli utenti di ridimensionare dinamicamente i riquadri delle attività e di avere più di due app visibili sullo schermo.
- Schermo diviso è l'implementazione predefinita della modalità multifinestra, che fornisce due riquadri delle attività in cui gli utenti possono posizionare le app.
- La funzionalità Picture in picture (PIP) consente ai dispositivi Android di riprodurre i contenuti video in una piccola finestra mentre l'utente interagisce con altre app.
Implementazione
Il supporto del multi-finestra è attivato per impostazione predefinita in Android 7.0 e versioni successive.
Per disattivarlo, imposta il flag config_supportsMultiWindow
su
false
nel file
config.xml del dispositivo.
La funzionalità Multi-window è disattivata per impostazione predefinita su tutti i dispositivi con poca RAM (dispositivi che dichiarano ActivityManager.isLowRam()
). I dispositivi con poca RAM ignorano il valore del flag config_supportsMultiWindow
.
Forma libera
Dopo aver attivato la modalità multi-finestra con il flag config_supportsMultiWindow
, i produttori di dispositivi possono consentire le finestre a forma libera. Questa modalità è più utile su dispositivi più grandi, come i tablet.
Per supportare la modalità a forma libera, attiva la funzionalità
PackageManager#FEATURE_FREEFORM_WINDOW_MANAGEMENT
di sistema in
/android/frameworks/base/core/java/android/content/pm/PackageManager.java
e imposta config_freeformWindowManagement
su true
in
config.xml.
<bool name="config_freeformWindowManagement">true</bool>
In Android 16, gli OEM possono supportare le finestre desktop sul proprio dispositivo per una configurazione multi-finestra a forma libera utilizzando Attiva le finestre desktop.
Attivare le finestre del desktop
Per attivare la visualizzazione in finestra sul desktop sul tuo dispositivo:
- Assicurati che il dispositivo supporti le finestre a forma libera.
-
Imposta il flag di overlay della configurazione
config_isDesktopModeSupported
sutrue
inconfig.xml
:<bool name="config_isDesktopModeSupported">true</bool>
-
Per attivare le finestre a forma libera sul display interno del dispositivo, imposta il flag di overlay della configurazione
config_canInternalDisplayHostDesktops
sutrue
inconfig.xml
. Questo flag viene ignorato seconfig_isDesktopModeSupported
èfalse
:<bool name="config_canInternalDisplayHostDesktops">true</bool>
Attivare i limiti di attività
Per configurare il numero massimo di attività supportate nella suddivisione in finestre sul computer:
- Attiva le finestre del desktop.
-
Imposta il flag di overlay della configurazione
config_maxDesktopWindowingActiveTasks
inconfig.xml
sul numero massimo di attività supportate. Per supportare un numero illimitato di attività, imposta il flag sul valore predefinito0
:<bool name="config_maxDesktopWindowingActiveTasks">4</integer>
Schermo diviso
L'esperienza predefinita della funzionalità Multi-finestra è la modalità schermo diviso, in cui l'interfaccia utente del sistema è divisa a metà del dispositivo in verticale o orizzontale. Gli utenti possono ridimensionare la finestra trascinando la linea di separazione da un lato all'altro o dall'alto verso il basso, a seconda dell'orientamento del dispositivo.
Dopo aver attivato lo schermo diviso, i produttori di dispositivi possono scegliere di attivare la modalità freeform o il PIP.
Android 8.0 e versioni successive migliorano la modalità schermo diviso comprimendo il programma di avvio quando l'utente tocca Home. Per i dettagli sull'implementazione, consulta Interazioni con lo schermo diviso.
Picture in picture
Dopo aver attivato la modalità multi-finestra con il flag config_supportsMultiWindow
, i produttori di dispositivi possono supportare la funzionalità picture in picture, che consente agli utenti di guardare i video mentre navigano in altre attività. Sebbene questa funzionalità sia destinata ai dispositivi Android TV, altri tipi di dispositivi potrebbero supportarla.
Per supportare il PIP, attiva la funzionalità di sistema PackageManager#FEATURE_PICTURE_IN_PICTURE
in /android/frameworks/base/core/java/android/content/pm/PackageManager.java
.
Per ulteriori dettagli sull'implementazione di PIP per i dispositivi con Android 8.0 o versioni successive,consulta la pagina Picture in picture.
UI di sistema
Supportare tutte le UI di sistema standard in base alla documentazione per gli sviluppatori relativa alla funzionalità Multi-finestra.
App
Per supportare la modalità multi-finestra per le app precaricate, consulta la documentazione per gli sviluppatori Android.
Convalida
Per convalidare l'implementazione del multi-finestra, esegui i test CTS correlati e segui le istruzioni di test per il multi-finestra.