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.
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.
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.
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.
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.
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.
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."
Apple has opinions about how apps should look and behave. Navigation patterns, button sizes, accessibility features. Depart significantly and they will flag it.
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.
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.
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.
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.
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'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.