Publish an iOS app flashcards
Ship to the App Store like a release engineer: signing, TestFlight, privacy, App Review and CI.
Beginner friendly, starts from zero
0
Publish an iOS app at a glance
Publishing an iOS app means getting your finished iPhone or iPad app into Apple's App Store so anyone can download it.
Like publishing a book: register as a publisher, give the book a unique number, print a final copy, pass the editor's check and get it on the bookshop shelf.
Words you will meet
- Xcode
- Apple's free app on the Mac for building, signing and uploading apps
- App Store Connect
- Apple's website where you manage your app's store page, builds and review
- Bundle ID
- Your app's permanent unique name, like com.ravi.notes
- Build number
- A number that goes up with every upload you send to Apple
- Code signing
- A digital seal proving the app came from you and was not changed
- Archive
- The finished, packed build of your app, ready to upload
- TestFlight
- Apple's app for trying builds before they are public
- App Review
- Apple's team checking your app against its rules before it goes live
The steps
- 1. Start from zero (12 cards): What publishing an iPhone app involves and the words you need, in plain English.
- 2. Core basics (15 cards): Membership, bundle ID, versions, signing, archive, upload and the store page.
- 3. Next steps (15 cards): TestFlight, privacy manifests, permission strings, review rules and phased release.
- 4. Go deeper (16 cards): CI signing and uploads, symbols, payments rules, EU rules and store growth.
All 12 cards in Start from zero
- What does publishing an iOS app mean, in one plain sentence?
- Getting your finished iPhone or iPad app into Apple's App Store, so anyone can find it, download it and get your updates.
- Why can you not just put an iPhone app file on a website for people to download?
- iPhones install normal apps only through Apple's store (with a few exceptions in some regions). Apple checks every app first, so the process proves who you are and that the app is safe.
- Where have you already met the end of this process?
- Every app on your iPhone came through it, and every update you install went through it again. The store page with the name, pictures and reviews is part of publishing too.
- What is a good everyday picture of publishing an app?
- Publishing a book: you register as a publisher, give the book a unique number, print a final copy, an editor checks it, and a bookshop puts it on the shelf with a cover.
- What are iOS, Xcode and the simulator?
- iOS is the system that runs iPhones. Xcode is Apple's free app for building apps, and it runs only on a Mac. The simulator is a pretend iPhone on your Mac screen for quick tests.
- What are the Apple Developer Program and App Store Connect?
- The Developer Program is Apple's paid yearly membership that lets you publish. App Store Connect is the Apple website where you manage your app: its store page, test builds, price and review.
- What are a bundle ID, a version and a build number?
- A bundle ID is your app's permanent unique name, like
com.ravi.notes. The version is the number users see, like 1.2. The build number counts each upload you send. - What is code signing, and what are a certificate and a provisioning profile?
- Code signing is a digital seal proving the app came from you and was not changed. The certificate is your ID card; the provisioning profile is the permission slip saying which app and where it may run.
- What are an archive, an upload and App Review?
- An archive is the finished, packed build of your app. You upload it to App Store Connect. App Review is Apple's team checking the app against its rules before it goes live.
- What is TestFlight, and who are beta testers?
- TestFlight is Apple's app for trying builds before they are public. Beta testers are the friends, colleagues or users you invite to try them and report problems.
- Your first tiny win: what do the two numbers in Xcode's General tab mean?
- Before you start you need a Mac with Xcode, an Apple Account and a working app. The version is what users see on the store. The build number goes up each time you upload, even for the same version.
- What will you be able to do after this topic?
- Set up your Apple membership and app record, sign and upload a build, send it to testers, prepare a strong store page, and get through App Review.
Publish an iOS app cheatsheet
Build and upload
xcodebuild -scheme Notes -destination 'generic/platform=iOS' archiveRelease archivexcodebuild -exportArchive -exportOptionsPlist ExportOptions.plistExport or upload.ipaflutter build ipa --build-number=$NFlutter archive and.ipaagvtool new-version -all 412Set build numberfastlane run upload_to_testflightUpload to TestFlightxcrun altool --validate-app -f Notes.ipa -t iosValidate an.ipabefore upload
Identity and signing
CFBundleIdentifierBundle ID, fixed foreverCFBundleShortVersionStringVersion users see, 2.1.0CFBundleVersionBuild number, rises every uploadApple Distribution certificateSigns TestFlight and store buildsApp Store provisioning profileApp ID + cert + entitlementssecurity find-identity -v -p codesigningList signing identities in keychain
Info.plist and privacy
PrivacyInfo.xcprivacyPrivacy manifest for app and SDKsNSCameraUsageDescriptionWhy the camera is neededNSLocationWhenInUseUsageDescriptionWhy location is neededNSUserTrackingUsageDescriptionText in the ATT promptITSAppUsesNonExemptEncryptionfalseskips export questionaps-environmentPush entitlement, production for TestFlight
TestFlight and review
Internal testers100 team members, no reviewExternal testers10,000, first build needs Beta App ReviewBuild expiry90 days after uploadPhased release7 days, pause up to 30 daysPending Developer ReleaseApproved, waits for your clickExpedited reviewCritical fixes and dated events
Store page limits
Name / subtitle30 / 30 charactersKeywords100 characters, comma separatedPromotional text170, change without reviewScreenshots6.9-inch iPhone, 13-inch iPad, up to 10Custom product pagesUp to 70 variantsAge ratings4+, 9+, 13+, 16+, 18+