orientation-support

Detects missing iPad orientation keys and portrait-only locks in iOS projects.

Updated Aug 14, 2026
One-click install
npx skills add https://github.com/tvh25082004/Badminton --skill orientation-support-tvh25082004
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: orientation-support
Source: https://github.com/tvh25082004/Badminton/tree/main/.claude/skills/apple-app-review/layout/orientation-support
Command: npx skills add https://github.com/tvh25082004/Badminton --skill orientation-support-tvh25082004

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? iPad apps that lack proper orientation support get rejected under App Store guideline 2.4.1 when reviewers rotate the device and the layout breaks. This Skill scans your iOS project to find missing iPad orientation keys, portrait-only orientation locks, and forced-rotation patterns before submission. ## Core Features & Use Cases - Info.plist Validation: Checks that UISupportedInterfaceOrientations~ipad exists and includes at least one landscape value. - Code-Level Detection: Greps Swift and Objective-C sources for supportedInterfaceOrientations overrides returning portrait-only masks, shouldAutorotate returning false, and third-party orientation-lock calls. - Prioritized Findings: Outputs a tiered findings list (CRITICAL/HIGH/MEDIUM/LOW) with file paths, line numbers, and actionable fixes mapped to guideline 2.4.1. - Use Case: Before submitting a universal app, run this audit to confirm the iPad reviewer can rotate the device without breaking your layout. ## Quick Start Ask the assistant to run the orientation-support audit on your iOS project root to verify iPad orientation handling before App Store submission.

Frequently Asked Questions about orientation-support

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I check iPad orientation support in my iOS app?▼

Check that your Info.plist contains the UISupportedInterfaceOrientations~ipad key with at least one landscape value such as UIInterfaceOrientationLandscapeLeft or UIInterfaceOrientationLandscapeRight. Also grep your Swift and Objective-C code for supportedInterfaceOrientations overrides that return portrait-only masks.

Why was my app rejected under App Store guideline 2.4.1?▼

Guideline 2.4.1 rejections commonly occur when an iPad app is locked to portrait and the layout breaks when the reviewer rotates the device. Missing UISupportedInterfaceOrientations~ipad keys or shouldAutorotate returning false are typical root causes.

What happens if UISupportedInterfaceOrientations~ipad is missing?▼

Without the iPad-specific plist key, iOS applies the iPhone orientation mask on iPad, which may be portrait-only. The app can appear non-universal and be rejected under guideline 2.4.1.

Does this orientation check work with React Native or Flutter projects?▼

Yes, the audit works on Swift, Objective-C, React Native, and Flutter projects. It scans Info.plist files and native source files regardless of the cross-platform framework used.

Can orientation-lock libraries cause App Store rejection?▼

Yes, third-party orientation-lock calls such as lockOrientation or lockToPortrait override the plist configuration and break iPad landscape support. These forced-rotation patterns are flagged as findings during the audit.