React Native · Mobile UI at native speed
How do you ship a React Native app to the stores?
Short answer
Build signed release binaries, bump version and build numbers, test through TestFlight and Play internal testing, then roll out in stages. Plan for review, privacy declarations and crash monitoring.
Deployment is mostly platform process rather than React Native code. iOS uses certificates, provisioning profiles and App Store Connect. Android uses a keystore, an app bundle and the Play Console. Both need a version strategy that keeps store builds and OTA runtime versions aligned.
Release checklist
- Increment the marketing version and the build number for every upload
- Build a release binary with the correct environment and API endpoints
- Run smoke tests on a physical device, including offline and permission flows
- Complete privacy manifests, data safety forms and permission justifications
- Use TestFlight or Play internal testing before a production rollout
- Stage the rollout and watch crash-free sessions and error rates
# EAS Build and Submit examples
eas build --platform ios --profile production
eas build --platform android --profile production
eas submit --platform ios --latest
eas submit --platform android --latestiOS review can reject an app for missing purpose strings, broken links, placeholder content or account deletion gaps. Android requires a target API level that changes over time. Keep the native toolchain and dependencies current enough to meet those requirements before the deadline.
Follow-ups you should expect
Interviewers use these to check whether the first answer was understanding or memorisation.
- 1What is the difference between a version number and a build number?
- 2Why use staged rollouts?
- 3What causes app review rejections most often?
- 4How do you manage signing keys in CI?
Say it in the interview
I treat release as a repeatable pipeline: bump versions, build signed binaries with the production environment, run device smoke tests, and go through TestFlight or Play internal testing before production. I stage the rollout and watch crash-free sessions. I also keep privacy declarations and permission justifications current, because those are common review blockers, and I keep signing keys in a secret manager rather than the repo.
Use this as a model, not a script. Saying it in your own words is what makes it survive follow-up pressure.
Related questions
Reading is step one
Now say it out loud.
Understanding an answer and delivering it under pressure are different skills. Rehearse this topic in a live React Native mock interview and get scored feedback on depth, clarity and confidence.