Publishing to App Stores
Guide to submitting Capacitor apps to Apple App Store and Google Play Store.
When to Use This Skill
- User is ready to publish app
- User asks about app store submission
- User needs app store screenshots
- User has app rejection issues
- User needs to update app listing
Pre-Submission Checklist
Universal Requirements
- App icon in all required sizes
- Splash screen configured
- App name and bundle ID set
- Version and build numbers set
- Privacy policy URL
- Terms of service URL
- Support email/URL
- Age rating content questionnaire
- App description (short and long)
- Keywords/tags
- Screenshots for all device sizes
- Feature graphic (Android)
- App preview video (optional)
iOS-Specific
- Apple Developer Program membership ($99/year)
- App Store Connect app created
- Signing certificates and profiles
- Info.plist usage descriptions
- App Tracking Transparency (if applicable)
- Sign in with Apple (if social login used)
- Export compliance (encryption)
Android-Specific
- Google Play Developer account ($25 one-time)
- App signed with release keystore
- Target SDK level (API 34+)
- 64-bit support
- Permissions declared in manifest
- Data safety form completed
- Content rating questionnaire
App Store Configuration
Version and Build Numbers
iOS Info.plist
Android build.gradle
App Icons
iOS App Icons
Required sizes (place in Assets.xcassets):
Android App Icons
Required sizes (place in res/mipmap-*):
Also needed:
- Adaptive icon (foreground + background layers)
- Play Store icon: 512x512
Generate Icons
Screenshots
iOS Screenshot Sizes
Android Screenshot Sizes
Feature Graphic (Android)
- Size: 1024x500
- Required for Play Store listing
Generating Screenshots
App Store Connect Submission
1. Create App
- Go to https://appstoreconnect.apple.com
- My Apps > + > New App
- Fill in:
- Platform: iOS
- Name: Your App Name
- Primary Language
- Bundle ID
- SKU (unique identifier)
2. App Information
- Category (primary and secondary)
- Content Rights
- Age Rating (complete questionnaire)
3. Pricing and Availability
- Price (Free or paid tier)
- Availability (countries)
4. App Privacy
- Privacy Policy URL (required)
- Data collection types:
- Contact Info
- Health & Fitness
- Financial Info
- Location
- Identifiers
- Usage Data
- etc.
5. Version Information
- Screenshots (all sizes)
- Promotional Text (170 chars)
- Description (4000 chars)
- Keywords (100 chars, comma-separated)
- Support URL
- Marketing URL (optional)
- What's New (for updates)
6. Build Upload
7. Submit for Review
- Answer export compliance questions
- Add notes for reviewer (if needed)
- Submit
Google Play Console Submission
1. Create App
- Go to https://play.google.com/console
- All apps > Create app
- Fill in:
- App name
- Default language
- App or game
- Free or paid
2. Store Listing
- Short description (80 chars)
- Full description (4000 chars)
- Screenshots (2-8 per device type)
- Feature graphic (1024x500)
- App icon (512x512)
- Video URL (optional, YouTube)
3. Content Rating
Complete the questionnaire for IARC rating
4. Target Audience
- Target age group
- Ads declaration
5. Data Safety
- Data collection
- Data sharing
- Security practices
- Data deletion request handling
6. App Content
- Ads (yes/no)
- App category
- Contact details
- Privacy policy
7. Release
Release Tracks
Common Rejection Reasons
iOS Rejections
Android Rejections
Updates and Versioning
Version Incrementing
Phased Rollout
iOS:
- Enable phased release in App Store Connect
- 7-day gradual rollout (1%, 2%, 5%, 10%, 20%, 50%, 100%)
Android:
- Set rollout percentage in release
- Monitor crash rate before increasing
Resources
- App Store Review Guidelines: https://developer.apple.com/app-store/review/guidelines
- Google Play Policy Center: https://play.google.com/about/developer-content-policy
- App Store Connect: https://appstoreconnect.apple.com
- Google Play Console: https://play.google.com/console
- Capacitor Assets: https://github.com/ionic-team/capacitor-assets


