Fixed Orientation Lock
Android activities must support both portrait and landscape orientations unless a specific orientation is essential to the functionality.
WCAG Reference
Maps to: WCAG 1.3.4 Orientation | Applies to: WCAG 2.1, WCAG 2.2 Introduced in: WCAG 2.1 | Level: AA | Read the official specification →
What this rule checks
The scanner flags activities with android:screenOrientation set to a fixed value (portrait, landscape, sensorPortrait, sensorLandscape) in the manifest, preventing device rotation.
Why it matters
Users with motor disabilities may mount their device in a fixed orientation (e.g., attached to a wheelchair). Users with low vision may prefer landscape to display larger text. Locking orientation removes this choice and can make the app physically uncomfortable or impossible to use.
Common failure patterns
android:screenOrientation="portrait"set globally on all activities- orientation locked programmatically with
setRequestedOrientation()for non-essential reasons - splash screens or onboarding locked to portrait that propagate the lock to subsequent screens
Remediation guidance
- remove
android:screenOrientationfrom the manifest (defaults to user-controlled rotation) - only lock orientation when the content genuinely requires it (e.g., a camera viewfinder)
- test the app in both orientations to confirm layouts adapt correctly
- document any essential orientation requirement with a clear justification
