# Guideline 2.1 - App Completeness: Crashes on Launch

**Guideline:** 2.1 · **Store:** Apple App Store · **Severity:** medium · **Fix difficulty:** medium · **Typical turnaround:** 2-8 hours

Canonical URL: https://appstorereject.com/rejections/apple/2/guideline-21-app-completeness-crashes-on-launch

## Description

Your app crashed on launch during our review. We tested on iPhone 15 Pro running iOS 17.4. The app displays a loading screen briefly then terminates unexpectedly. Apps submitted to the App Store must be complete and fully functional. We do not accept apps that crash or exhibit obvious technical problems.

## Common variations

- App crashes immediately after launch
- App becomes unresponsive on startup
- App displays blank screen then terminates
- Fatal error on app initialization

## Example rejection email

```
We discovered one or more bugs in your app. Specifically, the app crashed on launch on iPhone 15 Pro running iOS 17.4. Please review the details, make the appropriate corrections, and resubmit.
```

## Resolution steps

## Quick Assessment
- **Risk level:** Medium
- **Resolution path:** Fix & Resubmit
- **Typical turnaround:** 2-8 hours (plus resubmission time)

## The Fix

01. **Reproduce the crash locally**
   Test your app on iPhone 15 Pro simulator and physical device with iOS 17.4. Focus on launch sequence and initial loading.

02. **Check crash logs and analytics**
   Review Xcode crash logs, Firebase Crashlytics, or other crash reporting tools for stack traces from the rejection timeframe.

03. **Verify device-specific configurations**
   Ensure your app handles iPhone 15 Pro screen dimensions, memory constraints, and hardware-specific features properly.

04. **Test iOS 17.4 compatibility**
   Check for deprecated APIs, permission changes, or iOS 17.4-specific issues. Update any incompatible code.

05. **Validate third-party dependencies**
   Update all frameworks and SDKs to versions compatible with iOS 17.4. Remove or replace any causing conflicts.

06. **Test launch performance**
   Ensure your app launches within Apple's time limits (typically 20 seconds). Optimize heavy initialization tasks.

07. **Submit with detailed testing notes**
   In App Store Connect review notes, specify which devices and iOS versions you've tested successfully.

## Prevention
- Always test on the latest iOS version and newest iPhone models before submission
- Implement comprehensive crash reporting in development builds
- Use TestFlight beta testing to catch device-specific issues early

## Before / after examples

**Before:** App crashes because Firebase is not initialized before first database call in AppDelegate
**After:** Move FirebaseApp.configure() to the very first line of application(_:didFinishLaunchingWithOptions:)
**Why it works:** Ensure all SDK initialization happens before any dependent code runs

## Common questions

**How long does this typically take to fix?**

Typical turnaround is 2-8 hours (difficulty: medium). After resubmission, most re-reviews complete within 24-48 hours.

## Community solutions (1)

### Solution (+0, worked: 0)

---
*Machine-readable source: https://api.appstorereject.com/api/rejections/detail?slug=guideline-21-app-completeness-crashes-on-launch*