All in-app links, buttons, and navigation paths lead to real content
Why it matters
Dead-end screens are a leading cause of App Store rejection under Apple's guideline 2.1 (completeness). Reviewers systematically navigate every registered tab and screen — a blank render or immediate crash on any reachable route results in an automatic reject. ISO 25010:2011 functional-completeness defines this failure directly: functionality that exists in the navigator but cannot be used provides zero functional value and destroys reviewer trust, putting the entire binary at risk regardless of how polished the rest of the app is.
Severity rationale
Critical because a single blank or crashing screen causes immediate rejection — no other metric matters if a reviewer cannot navigate the app.
Remediation
Audit every screen registered in your navigator before submission. Remove or replace any that render null or an empty <View />.
// app/(tabs)/settings.tsx — replace null renders with real content
export default function SettingsScreen() {
// Was: return null;
return (
<View style={styles.container}>
<Text>Settings coming in v2</Text>
</View>
);
}
For screens not ready for launch, remove them from the navigator file entirely rather than leaving them registered. A tab that doesn't exist beats a tab that crashes.
DetectionPro
The detection method for this pattern is part of AuditBuffet Pro.
The full method (what to look for, pass and fail conditions, and how results get reported) ships inside the App Store Review Blockers Audit. The pattern definition, severity rationale, and remediation remain openly licensed under CC-BY-4.0.
External references
- iso-25010:2011 · functional-completeness — Functional Completeness (ISO 25010 Functional Suitability)
Taxons
History
- 2026-04-18·v1.0.0·Initial import from app-store-review-blockers·automated