Le app ottimizzate supportano completamente tutti i tipi di schermo e gli stati del dispositivo, incluse le transizioni di stato.

Linee guida
Crea la tua app in modo che si adatti a tutte le dimensioni di visualizzazione e agli stati dei dispositivi.
Interfaccia utente
| ID linea guida | ID test | Descrizione |
|---|---|---|
| Responsive_adaptive_layouts | T-Layout_Flow | L'app ha layout adattabili e reattivi progettati per tutte le dimensioni dello schermo. Tutti i layout sono adattabili (consulta Esegui la migrazione della UI ai layout adattabili). L'implementazione dei layout adattivi è determinata dalle classi di dimensioni della finestra. La UI dell'app può includere:
Crea layout con più riquadri (se appropriato) per sfruttare lo spazio degli schermi di grandi dimensioni. Consulta Layout canonici. Per le app Jetpack Compose, utilizza layout adattivi (come |
| UI_Secondary_Elements | T-Layout_Flow | Le finestre modali, i menu contestuali e altri elementi secondari sono formattati correttamente su tutti i tipi di schermo e stati del dispositivo, ad esempio:
|
| Touch_Targets | T-Touch_Targets | I touch target sono di almeno 48 dp. Consulta le linee guida di Material Design relative alle dimensioni dei target. |
| Drawable_Focus | T-Drawable_Focus | Viene creato uno stato attivo per gli elementi drawable personalizzati interattivi. Un drawable personalizzato è un qualsiasi elemento UI visivo non fornito dal framework Android. Se gli utenti possono interagire con un elemento drawable personalizzato, questo deve essere attivabile quando il dispositivo non è in modalità touch e deve essere visibile un'indicazione visiva dello stato attivo. |
Tastiera, mouse e trackpad
| ID linea guida | ID test | Descrizione |
|---|---|---|
| Keyboard_Navigation | T-Keyboard_Navigation | I flussi delle attività principali nell'app supportano la navigazione da tastiera, inclusa la navigazione con i tasti Tab e Freccia. Consulta Crea app più accessibili. |
| Keyboard_Shortcuts | T-Keyboard_Shortcuts | L'app supporta le scorciatoie da tastiera per le azioni di uso comune, come selezione, taglio, copia, incolla, annullamento e ripetizione. Consulta Tastiera, mouse e trackpad. |
| Keyboard_Media_Playback | T-Keyboard_Media_Playback | La tastiera può essere utilizzata per controllare la riproduzione dei contenuti multimediali. Ad esempio, la barra spaziatrice riproduce e mette in pausa i contenuti multimediali. |
| Keyboard_Send | T-Keyboard_Send | Il tasto Invio della tastiera esegue una funzione di invio nelle app di comunicazione. |
| Keyboard_Exit | T-Keyboard_Exit | Il tasto Esc della tastiera esegue una funzione di uscita che termina o annulla un'azione, ad esempio:
|
| Context_Menus | T-Context_Menus | È possibile accedere ai menu contestuali tramite il tipico comportamento del clic con il tasto destro del mouse e del trackpad (pulsante secondario del mouse o tocco secondario). |
| Content_Zoom | T-Content_Zoom | È possibile aumentare lo zoom dei contenuti dell'app utilizzando la rotellina di scorrimento del mouse (insieme alla pressione del tasto Control o Ctrl) e i gesti di pizzicamento del trackpad. |
| Hover_States | T-Hover_States | Gli elementi dell'interfaccia utente utilizzabili hanno stati di passaggio del mouse (se appropriato) per indicare agli utenti di mouse e trackpad che gli elementi sono interattivi. |
Test
Per assicurarti che la tua app sia ottimizzata e reattiva per tutte le configurazioni di visualizzazione, esegui i seguenti test.
Interfaccia utente
| ID di test | ID linee guida | Descrizione |
|---|---|---|
| T-Layout_Flow |
Responsive_adaptive_layouts, UI_Secondary_Elements |
Esegui l'app su dispositivi con un'ampia gamma di dimensioni dello schermo, tra cui smartphone, smartphone pieghevoli, tablet piccoli e grandi e computer. Esegui l'app in modalità multi-finestra sui dispositivi. Verifica che il layout dell'app risponda e si adatti alle diverse dimensioni dello schermo e della finestra. Verifica se l'app espande e contrae le barre di navigazione, scala il numero di colonne nei layout a griglia, dispone il testo in colonne e così via. Osserva se gli elementi UI sono formattati sia per l'estetica sia per la funzionalità. Per le app legacy che utilizzano l'incorporamento delle attività, verifica se le attività vengono visualizzate una accanto all'altra sugli schermi grandi e una sopra l'altra sugli schermi piccoli. |
| T-Touch_Targets | Touch_Targets | Verifica che i touch target mantengano dimensioni e posizione coerenti e accessibili e non siano nascosti o oscurati da altri elementi UI per tutte le dimensioni e configurazioni del display. Per informazioni sull'accessibilità, consulta Accessibility Scanner. |
| T-Drawable_Focus | Drawable_Focus | In ogni schermata dell'app che contiene un elemento drawable personalizzato interattivo, verifica che l'elemento drawable possa essere selezionato utilizzando una tastiera esterna, un D-pad o un altro dispositivo che consente di selezionare gli elementi UI. Verifica che sia presente un'indicazione visiva dello stato attivo. Per informazioni correlate, consulta la documentazione sullo stato attivo di Compose. |
Tastiera, mouse e trackpad
| ID di test | ID linee guida | Descrizione |
|---|---|---|
| T-Keyboard_Navigation | Keyboard_Navigation | Naviga tra i componenti attivabili dell'app utilizzando il tasto Tab e i tasti freccia di una tastiera esterna. |
| T-Keyboard_Shortcuts | Keyboard_Shortcuts | Utilizza le scorciatoie da tastiera su una tastiera esterna per eseguire azioni di selezione, taglio, copia, incolla, annullamento e ripetizione. |
| T-Keyboard_Media_Playback | Keyboard_Media_Playback | Utilizza una tastiera esterna per avviare, interrompere, mettere in pausa, riavvolgere e mandare avanti velocemente la riproduzione di contenuti multimediali. |
| T-Keyboard_Send | Keyboard_Send | Utilizza il tasto Invio di una tastiera esterna per inviare o confermare i dati. |
| T-Keyboard_Exit | Keyboard_Exit | Utilizza il tasto Esc di una tastiera esterna per eseguire una funzione di uscita. Verifica che la chiave esegua le seguenti operazioni (se applicabile):
|
| T-Context_Menus | Context_Menus | Utilizza il pulsante secondario del mouse o la funzionalità di tocco secondario del trackpad per accedere al menu contestuale degli elementi interattivi. |
| T-Content_Zoom | Content_Zoom | Utilizza la rotellina di scorrimento del mouse (insieme al tasto Control o Ctrl) e i gesti di pizzicamento del trackpad per aumentare e diminuire lo zoom dei contenuti. |
| T-Hover_States | Hover_States | Passa il cursore del mouse o del trackpad sugli elementi dell'interfaccia utente utilizzabili per attivare lo stato di passaggio del mouse dell'elemento. |