Complete publishing playbook
Turn your web app into real Android and iOS apps
Eight phases, in order, from opening a developer account to a staged production rollout. Android first, iOS right behind it. Nothing hand-waved — every command, every console screen, every declaration form.
One codebase, two stores
Capacitor wraps your existing web build in real Android and iOS projects — no rewrite, no second team.
Commands filled in for you
Enter your app name and ID once; every command, Gradle block and config file on the site uses your values.
The parts that go wrong
Keystores, target API levels, data safety forms, App Review guideline numbers — the traps, with the fix next to each.
Your progress
Loading your progress…
Accounts, machines and tools
Get the code on your machine and native-ready
Wrap the web app in a native project
Icons, splash, insets, back button, plugins
Signing, AAB, Play Console, testing tracks, rollout
Xcode, signing, TestFlight, review
Updates, monitoring, keeping the keys safe
The errors you will actually hit
The route to the store
- 0Before you startStore accounts take real time to approve and cost real money. Start these on day one so nothing blocks you at the end. Everything below is a one-time setup per developer, not per app. 1–3 days (account approval)
- 1Prepare the web appCapacitor bundles the finished output of your web build. Anything that only works on a live server — server-rendered routes, server functions, redirects to your own domain — needs a plan before you wrap. Fix this now; debugging it inside a native shell is far harder. 1–2 hours
- 2Add CapacitorThis is the mechanical part: install Capacitor, name the app, generate the Android project, and get it running on an emulator and a real phone. Fill in your app details once below and every command on this page uses them. 45 minutes
- 3Make it feel nativeThis phase is what separates an approved app from a rejected one. Reviewers open your app and ask: does this look and behave like an Android or iOS app, or like a website in a frame? Every item here is cheap and moves that answer. 2–4 hours
- 4Publish on Google PlayThe full Android release path. Work through it in order — the keystore step in particular is irreversible, and getting it wrong means you can never update your app again under the same listing. Once your keys are saved in the build console, the 'Store page' tab does the last part for you: fill in the title, descriptions and pictures, then press 'Send app and store page to Google Play' and the machine builds, signs and sends everything in one go. Google still reviews it, and the account, fees, data safety form and tester rules below remain yours to complete. 1 day of work + 14 days of testing
- 5Publish on the App StoreThe iOS path is shorter to describe but stricter to pass. Everything here needs a Mac with Xcode. Apple reviews every build by hand, so the polish work from Phase 3 matters more here than anywhere else. 1 day + 1–3 days review
- 6After launchShipping version 1.0 is the start of the maintenance cycle. This is the routine to follow for every release from now on. Ongoing
- 7TroubleshootingSymptom-first fixes for the failures that come up again and again. Search this page before you search the web. As needed
What this guide cannot do for you
Signing, uploading and store review happen on your machine and inside the Play Console and App Store Connect — no website can do those on your behalf. What you get here is the exact command, the exact screen and the exact field for each of them, in the order they have to happen.