1. Choose the real mobile project
- 1Native app or deliberate WebView shell
Ask your builder which supported mobile project it is producing. Reuse the feature plan and data rules, but adapt native screens, navigation, storage, sign-in and connections. A website shortcut is not a store package. Native Forge is a separate shell workflow, not something every AppLab licence includes.
- 2Keep connections safe
Private keys stay in the owner's app secrets, never the phone bundle. Your builder must use stable authenticated connections and keep updates compatible with installed app versions. The pack includes MOBILE-PUBLISHING.md; ask the builder to complete its release checklist.
2. Accounts and permanent app identifiers
- 1Apple Developer and App Store Connect
Create and verify your own developer membership, accept agreements and create the app record with the build's exact bundle ID. Check current fees and organisation requirements.
Apple enrolment instructions - 2Google Play Console
Create and verify your developer account and app record. Confirm any device verification or closed-testing requirement for your account. Keep the Android package ID unchanged for future releases.
Google developer account instructions
3. Build, sign and test
- 1Use the supported build service
Ask your builder for one setup step at a time, naming the exact app record and field. iOS requires a distribution-signed IPA; Android production uses a signed Android App Bundle (.aab). A source ZIP or simulator build is not a production artifact. Keep signing credentials in your secure build service.
- 2Test iPhone through TestFlight
Upload the compiled build and test on real devices. Check fresh sign-in, reopening, links, permissions, account deletion, payments and restore purchases when applicable.
TestFlight instructions - 3Test Android through Play tracks
Use internal testing and any closed-testing period your account requires. Test denied permissions, network loss and recovery, large text and supported devices separately from iPhone.
Play testing instructions
4. Listing, privacy and store billing
- 1Prepare the real listing
Use screenshots from the compiled app, its real icon, support contact and working privacy link. Complete Apple's App Privacy and Google's Data safety declarations for everything collected, including third-party tools. Supply reviewer access if login is required.
- 2Deletion, permissions and purchases
Implement applicable account-deletion requirements, including Google's public deletion-request link where required. Digital purchases may require store billing and restoration; web checkout is not automatically acceptable. Have your builder check the current product and regional rules.
Apple review requirements - 3Check Google policies too
Google and Apple have separate rules. Only request necessary permissions and describe why they are needed. Do not assume approval on one store proves acceptance on the other.
Google payments policy
5. Submit, review, then release
- 1Submit the processed build
Select the signed build in the app record, complete declarations and submit for review. Test upload, review submission, approval and public release are separate states. Keep anything untested marked not tested.
- 2Handle review feedback
Give your builder the store's exact rejection reason. Fix it, increase the build number and resubmit without deleting existing customer data. Neither approval nor review timing is guaranteed.
- 3Release and update safely
Release only after approval and your final check. Preserve signing and identifiers. Ship new store versions before requiring customers to update; keep their data and existing connections compatible.
Return to AppLab launch help