Publish an Android app flashcards
Ship to Google Play like a release engineer: signing, tracks, policy forms, staged rollouts and CI.
Beginner friendly, starts from zero
0
Publish an Android app at a glance
Publishing an Android app means getting your app onto Google Play so anyone can install it and receive your updates.
It is like selling a packaged snack in a supermarket: register as a seller, seal the packet, print the label, pass the safety check, then it goes on the shelf.
Words you will meet
- Play Console
- Google's website where developers manage their apps
- Build
- The installable file made from your code
- App bundle (AAB)
- The package you upload, from which Play makes a file for each phone
- Signing key
- A secret digital seal that proves an app came from you
- Version code
- A counting number that must go up with every upload
- Store listing
- Your app's shop page: name, icon, pictures and description
- Track
- A group that gets a build, such as testers or everyone
- Rollout
- Releasing a new version to more and more users, step by step
The steps
- 1. Start from zero (12 cards): What publishing means, the Play words you need, and what to have ready.
- 2. Core basics (15 cards): Account, app bundle, versioning, signing and a store listing that passes review.
- 3. Next steps (15 cards): Target API deadlines, testing tracks, policy forms, release config and staged rollouts.
- 4. Go deeper (16 cards): CI publishing, vitals, rollbacks, integrity, monetisation rules and policy fights.
All 12 cards in Start from zero
- What does publishing an Android app mean, in one plain sentence?
- Putting your app on Google Play, the app store on most Android phones, so anyone can find it, install it and get your updates.
- Before app stores, how did people get apps, and where do you see this today?
- People passed app files around by hand, could not tell if they were safe, and had to install updates themselves. Today, every app you install from the Play Store went through the steps in this topic.
- What is an everyday picture of the whole process?
- Like selling a packaged snack in a supermarket: register as a seller, seal the packet with your brand, print the label, pass the safety check, and the shop puts it on the shelf.
- What are the Play Console and a developer account?
- The Play Console is Google's website where developers manage their apps. A developer account is your login there, paid for once and verified with your ID.
- What is a build, and what is the difference between debug and release?
- A build is the installable file made from your code. A debug build is for testing on your own phone; a release build is the final, tidy one you give to users.
- What are an APK and an AAB?
- An APK is the file a phone installs. An AAB (Android App Bundle) is the bigger package you upload to Play, which then makes the right APK for each phone.
- What do signing, a key and a keystore mean?
- Signing stamps your app with a secret digital key, like a wax seal, so phones know an update really came from you. A keystore is the locked file that holds the key.
- What are a version name and a version code?
- The version name is what people see, like 1.4.0. The version code is a plain counting number, like 14, that must go up with every upload.
- What are a store listing, a track and a rollout?
- The store listing is your app's shop page: name, icon, pictures and description. A track is a group who gets a build, such as testers or everyone, and a rollout releases it step by step.
- What are the Android SDK and Gradle?
- The Android SDK is Google's toolkit for making Android apps, with a numbered API level for each Android version. Gradle is the build tool that turns your project into the final file.
- What do you need before starting this topic?
- An Android app that already runs on your phone or emulator (a pretend phone on your computer), a Google account, and a card for the one-time fee of 25 US dollars.
- What will you be able to do after this topic?
- Create the developer account, build and sign a release bundle, fill the listing and policy forms, test with real users, and roll out updates safely.
Publish an Android app cheatsheet
Build and version
./gradlew bundleReleaseSigned release AAB./gradlew assembleReleaseRelease APK for local checksflutter build appbundle --build-number=$NFlutter AAB with CI version codeversionCode = 42Integer, must rise on every uploadversionName = "1.4.0"Display text, can repeattargetSdk = 36Required for updates since 31 Aug 2026isMinifyEnabled = trueTurn on R8 for release
Signing
keytool -genkeypair -keystore upload.jks -alias upload -keyalg RSA -keysize 2048 -validity 10000Create upload keykeytool -list -v -keystore upload.jksShow SHA-1 and SHA-256keytool -export -rfc -keystore upload.jks -alias upload -file cert.pemExport cert for key reset./gradlew signingReportFingerprints for every variantPlay Console > App integrityApp signing key fingerprints
Tracks and rules
Internal testing100 testers, minutes, every CI buildClosed testing12 testers for 14 days on new personal accountsOpen testingPublic beta from the listingProduction staged rolloutStart 1 to 10 percent, halt anytimeManaged publishingApproved changes wait for your clickCrash 1.09% / ANR 0.47%Vitals bad behaviour thresholds
App content forms
Privacy policyPublic URL, also linked in appData safetyAll data incl. SDKs, plus deletion URLContent ratingIARC questionnaire, age ratingsTarget audienceUnder 13 triggers Families policyPermissions declarationSMS, call log, all files, background locationAds declarationSay whether the app shows ads
Tools
bundletool build-apks --connected-deviceAPKs Play would serve this phonebundletool install-apks --apks=app.apksInstall that APK setfastlane supply --track internalUpload AAB from CIfastlane supply --track production --rollout 0.055 percent staged rolloutadb shell getconf PAGE_SIZECheck 16 KB page device