Orientamento dello Schermo
Supportare l'orientamento dello schermo preferito da tutti gli utenti
Cosa Controlliamo
La tua app non dovrebbe limitare l'orientamento del display preferito dall'utente. Ad esempio, se un utente ha impostato il dispositivo in modalità orizzontale, l'app dovrebbe ruotare di conseguenza, non restare bloccata in modalità verticale.
Esempio di Insuccesso ❌
L'app resta in modalità verticale portrait mode anche quando il dispositivo è ruotato in orizzontale
Gli utenti con dispositivi montati in un'orientazione orizzontale fissa non possono utilizzare l'app
Esempio di Successo ✅
L'app ruota rotates to landscape mode quando il dispositivo viene ruotato
Gli utenti con dispositivi montati in qualsiasi orientamento possono utilizzare completamente l'app
In Sintesi
- Questa regola ha un impatto serio per gli utenti
- Non bloccare l'app a una sola orientazione
- Rimuovi eventuali restrizioni di orientamento hard-coded nel tuo manifest o nel codice dell'attività
Impatto sugli Utenti
Alcune persone hanno un telefono o un tablet montato in un'orientamento fisso. Se l'app non può supportare quell'orientamento, diventa inutilizzabile per l'utente.
Conferma il Problema di Orientamento dello Schermo
- Ruota il dispositivo di 90 gradi, dalla modalità verticale a quella orizzontale
- Succederà una delle seguenti cose:
- Inaccessibile: Il display resterà in modalità verticale e non ruoterà in modalità orizzontale.
- Accessibile: Il display ruoterà dalla modalità verticale a quella orizzontale.
Risolvi i Problemi
Android Nativo
Permetti alla tua applicazione di supportare qualsiasi orientamento rimuovendo le restrizioni di orientamento hard-coded. Luoghi comuni da controllare:
- In
AndroidManifest.xml, rimuovi o aggiorna l'attributoscreenOrientationsu qualsiasi elemento<activity>:
<!-- Remove or change this -->
android:screenOrientation="portrait"- Nel codice dell'attività, rimuovi eventuali chiamate a
setRequestedOrientation:
// Remove this
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);Flutter
Non limitare l'app a una sola orientazione utilizzando SystemChrome.setPreferredOrientations.
// Failing — locked to portrait only
SystemChrome.setPreferredOrientations([
DeviceOrientation.portraitUp,
DeviceOrientation.portraitDown,
]);
// Passing — all orientations allowed
SystemChrome.setPreferredOrientations(DeviceOrientation.values);Posso Ignorare Questa Regola?
L'orientamento dello Schermo ha un impatto serio per gli utenti. Consigliamo di risolvere questo problema in quasi tutti i casi. Se la tua app è progettata specificamente per un dispositivo fisicamente vincolato a un'unica orientazione (come un terminale di punto vendita), ignorare questa regola può essere appropriato. Scopri di più su ignorare le regole.
Risorse
- Linee guida per l'accessibilità dei contenuti Web (WCAG) 2.1, Raccomandazione W3C
- WCAG 2.1 Documenti di Comprensione
