App Store Submission
Apple App Store Submission Guide
Prerequisites
- Apple Developer Account ($99/year)
- Xcode installed (latest version)
- EAS CLI configured
- App icons (1024x1024 for App Store)
- Screenshots for all device sizes
- Privacy Policy URL
- App description and metadata
Step 1: Apple Developer Setup
1.1 Create App ID
- Go to Apple Developer Portal
- Navigate to Certificates, Identifiers & Profiles
- Click Identifiers → + button
- Select App IDs → Continue
- Select App → Continue
- Fill in:
- Description:
Civix - US Citizenship Test - Bundle ID:
com.yourcompany.civix(Explicit)
- Description:
- Enable capabilities:
- In-App Purchase
- Push Notifications (if needed)
- Click Continue → Register
1.2 Create Provisioning Profiles
Development Profile
- Profiles → + button
- Select iOS App Development
- Select your App ID
- Select certificates and devices
- Name:
Civix Development - Download and install
Distribution Profile
- Profiles → + button
- Select App Store Connect
- Select your App ID
- Select distribution certificate
- Name:
Civix Distribution - Download
Step 2: App Store Connect Setup
2.1 Create New App
- Go to App Store Connect
- Click My Apps → + → New App
- Fill in:
- Platform: iOS
- Name:
Civix - US Citizenship Test - Primary Language: English (U.S.)
- Bundle ID: Select your registered ID
- SKU:
civix-ios-001 - User Access: Full Access
2.2 App Information
Navigate to App Information:
Name: Civix - US Citizenship Test
Subtitle: Pass Your Naturalization Exam
Category: Education
Secondary Category: Reference
Content Rights: Does not contain third-party content
Age Rating: Complete questionnaire (4+)
2.3 Pricing and Availability
- Navigate to Pricing and Availability
- Set Price: Free (with IAP)
- Select Availability: All territories (or specific)
- Pre-Order: No
Step 3: In-App Purchases Setup
3.1 Create IAP Products
- Navigate to Features → In-App Purchases
- Click + button for each:
Monthly Subscription
Type: Auto-Renewable Subscription
Reference Name: Civix Premium Monthly
Product ID: civix_premium_monthly
Subscription Group: Civix Premium
Price: $4.99/month
Annual Subscription
Type: Auto-Renewable Subscription
Reference Name: Civix Premium Annual
Product ID: civix_premium_annual
Subscription Group: Civix Premium
Price: $29.99/year
Lifetime Purchase
Type: Non-Consumable
Reference Name: Civix Premium Lifetime
Product ID: civix_premium_lifetime
Price: $59.99 (one-time)
3.2 Subscription Group Setup
- Create group: Civix Premium
- Set display name for App Store
- Add localized descriptions:
Display Name: Civix Premium
Description: Unlock all 100 questions, remove ads, and access all languages
3.3 IAP Metadata (for each product)
Display Name: Premium Monthly
Description: Full access to all citizenship test content
Review Screenshot: [Upload screenshot of premium features]
Review Notes: Test account provided in App Review Information
Step 4: Prepare App Metadata
4.1 Screenshots Required
| Device | Size | Required |
|---|---|---|
| iPhone 6.9" | 1320 x 2868 | Yes |
| iPhone 6.7" | 1290 x 2796 | Yes |
| iPhone 6.5" | 1284 x 2778 | Yes |
| iPhone 5.5" | 1242 x 2208 | Yes |
| iPad Pro 13" | 2064 x 2752 | If universal |
| iPad Pro 12.9" | 2048 x 2732 | If universal |
4.2 App Description
Master the US Citizenship Test with Civix!
Prepare for your naturalization interview with the official 100 USCIS civics questions. Our app makes studying easy, effective, and even fun!
FEATURES:
- All 100 official USCIS civics questions
- Practice mode with instant feedback
- Quiz mode to test your knowledge
- Progress tracking and statistics
- Multiple language support (English, Spanish, and more)
- Beautiful, easy-to-use interface
PREMIUM FEATURES:
- Unlimited quiz attempts
- Ad-free experience
- Access to all languages
- Priority support
Whether you're just starting your citizenship journey or preparing for your final interview, Civix helps you succeed!
Download now and take the first step toward becoming a US citizen!
4.3 Keywords (100 characters max)
citizenship,naturalization,uscis,civics,test,exam,us,citizen,immigration,study,practice,quiz
4.4 What's New (for updates)
- Improved quiz experience
- New practice modes
- Bug fixes and performance improvements
4.5 Support & Privacy URLs
Support URL: https://yourwebsite.com/support
Privacy Policy URL: https://yourwebsite.com/privacy
Step 5: Build and Submit with EAS
5.1 Configure eas.json
{
"cli": {
"version": ">= 5.0.0"
},
"build": {
"development": {
"developmentClient": true,
"distribution": "internal"
},
"preview": {
"distribution": "internal"
},
"production": {
"autoIncrement": true
}
},
"submit": {
"production": {
"ios": {
"appleId": "your@email.com",
"ascAppId": "1234567890",
"appleTeamId": "XXXXXXXXXX"
}
}
}
}
5.2 Build for Production
# Build iOS production
eas build --platform ios --profile production
# This will:
# 1. Create production build
# 2. Sign with distribution certificate
# 3. Upload to EAS servers
# 4. Return download URL
5.3 Submit to App Store
# Submit to App Store Connect
eas submit --platform ios --latest
# Or specify build
eas submit --platform ios --id [BUILD_ID]
5.4 Alternative: Manual Upload
- Download the
.ipafrom EAS - Open Transporter app (Mac)
- Sign in with Apple ID
- Drag and drop
.ipa - Click Deliver
Step 6: App Review Preparation
6.1 App Review Information
Sign-In Required: No (or provide test account)
Contact Information:
- First Name: [Your Name]
- Last Name: [Your Last Name]
- Phone: +1-XXX-XXX-XXXX
- Email: your@email.com
Notes for Review:
"This app helps users prepare for the US Citizenship (Naturalization) test.
It includes all 100 official USCIS civics questions.
To test premium features:
1. Open Settings
2. Access the developer panel (dev builds only)
3. Or use sandbox test account: test@example.com / TestPass123"
6.2 Export Compliance
Does your app use encryption? Yes
Is it exempt? Yes (uses standard HTTPS/TLS)
6.3 Content Rights
Does your app contain third-party content? No
(USCIS questions are public domain)
6.4 Advertising Identifier (IDFA)
Does this app use IDFA? Yes
Purpose:
- [x] Serve advertisements within the app
- [x] Attribute app installation to a prior ad
Step 7: Submit for Review
7.1 Version Release
- Navigate to your app version
- Select release option:
- Manually release (recommended first time)
- Automatically release
- Scheduled release (specific date)
7.2 Submit
- Verify all sections are complete (green checkmarks)
- Click Add for Review
- Answer compliance questions
- Click Submit to App Review
Step 8: Post-Submission
8.1 Review Timeline
- Standard Review: 24-48 hours (usually)
- Expedited Review: Request if critical bug fix
8.2 Common Rejection Reasons
| Reason | Solution |
|---|---|
| Guideline 2.1 - Crashes | Test thoroughly on physical devices |
| Guideline 2.3 - Incomplete | Include all features, not "coming soon" |
| Guideline 3.1.1 - IAP | Use Apple's IAP for digital content |
| Guideline 4.2 - Minimum Functionality | Ensure app provides unique value |
| Guideline 5.1.1 - Privacy | Include privacy policy, request permissions properly |
8.3 Responding to Rejection
- Read the rejection message carefully
- Fix the issues mentioned
- Reply in Resolution Center with explanation
- Resubmit for review
Checklist Before Submission
- App tested on physical devices
- All IAP products created and tested
- Screenshots uploaded for all required sizes
- App description and keywords finalized
- Privacy policy URL accessible
- Support URL accessible
- Age rating questionnaire completed
- Export compliance answered
- Build uploaded successfully
- All metadata sections complete (green checkmarks)