11
Chapter 11

Shipping Mobile Alone

Getting your app into the App Store is not a coding problem. It is a bureaucratic one. The code is the easy part. The rejections, the rules, the screenshots — that is where your time goes.

14 min read | Standard | Shaen Hawkins
App Store review screen with approval and rejection status indicators

One Codebase, Two App Stores

Cross-platform frameworks like React Native (with Expo) or Flutter let you write your app once and have it work on both iPhones and Android phones. This is not a compromise — major apps like Instagram, Shopify, and Discord use React Native. The technology is mature and the results are indistinguishable from apps built natively for each platform.

Expo adds a layer on top that handles the painful parts. Building your code into an actual app file that Apple and Google accept? Expo does it in the cloud. Configuring the dozens of settings each app store requires? Expo has sensible defaults. Dealing with the certificates and signing keys? Expo manages them.

The practical impact: you never need to open Xcode or Android Studio. These are complex tools designed for full-time mobile engineers. As a solo builder, avoiding them saves weeks.

What It Costs
$99
/year — Apple Developer
$25
one-time — Google Play
$99
/month — EAS Pro (optional)

Expo/EAS free tier works for occasional builds. Pro at $99/month gives faster builds and faster over-the-air updates. In the early days when you are building and fixing things daily, the Pro tier pays for itself in time saved.

Restaurant Analogy

Getting into the App Store is like getting your restaurant's health inspection certificate. The food might be perfect. But if the paperwork is wrong, the fire exit is not labeled correctly, or the bathroom sign does not meet code — you do not open. Plan for three inspections before you pass.

The App Store Gauntlet

Apple will reject your app. Probably multiple times. This is not a sign that your app is bad. It is the normal process.

Apple has a set of guidelines that every app must follow. A human reviewer checks your app against these guidelines. If anything does not match — even small things — they send it back with notes. You fix it, resubmit, and wait 1-3 days. Three rejections before approval is completely normal.

Payment Rules

If your app sells anything digital, Apple wants a cut. In most countries, you must use Apple's In-App Purchase. In the US, recent court rulings (Epic v. Apple) give you more flexibility — you can link to your website for payments.

AI Privacy Disclosure

If your app uses AI, Apple wants you to clearly tell users what data is sent to AI providers and get explicit consent. An informational screen is not enough — users must actively tap "I Accept."

Design Guidelines

Apple has opinions about how apps should look and behave. Navigation patterns, button sizes, accessibility features. Depart significantly and they will flag it.

Metadata Mismatch

Screenshots, descriptions, and age ratings in the App Store listing. If screenshots show features that do not match the actual app, or descriptions make unsupported claims, they catch it.

The Real Timeline

From "my app works on my phone" to "live in the App Store" is not two weeks. Plan for four to six weeks. Each rejection-fix-resubmit cycle takes 2-5 days. Three cycles is 6-15 days just waiting. Do not tell anyone your launch date until you are approved. Do not print the grand opening flyers until the certificate is on the wall.

OTA Updates vs. Full Rebuilds

Once your app is live, you will need to update it frequently — especially in the early weeks when users find issues you did not catch. There are two ways to push updates.

Over-the-Air Update (OTA)

A small update that goes directly to users' phones without App Store review. Limited to text, colors, images, and minor logic changes. Like fixing a typo on the menu — you do not need a health inspection for that. Fast: users see changes within hours.

Full Build

A complete rebuild and resubmission through the App Store. Required for new screens, new native features, structural changes. Like a kitchen renovation — the inspector needs to come back. Slow: 1-3 days for review.

Google Play — Different Rules, Faster Process

Google Play's review is generally faster and less strict. First submissions typically take 1-3 days. Updates can be approved in hours. The payment rules are less restrictive, simplifying your architecture.

Google does have a 14-day closed testing requirement for new apps before you can publish to open testing or production. Plan for this in your timeline.

My recommendation: submit to both stores. Build and submit Apple first — it is stricter, so if it passes Apple's review, it will almost certainly pass Google's. Then submit to Google Play once you have worked out any issues Apple flagged.

Build
EAS cloud build
Apple Review
1-3 days per cycle
Fix & Resubmit
Address exact flags
Approved
Then submit Google
Topics Covered
React Native Expo & EAS App Store Review Rejection Reasons AI Disclosure In-App Purchase Rules OTA Updates Google Play TestFlight