Publishing a Flutter App: Signing, Release Builds and Preparing for Myket, Bazaar and Google Play

Building the app is half the job. This guide walks through signing, building APK and AAB, icon and name, and a release checklist for Myket, Cafe Bazaar and Google Play.

3 min read1 views
Publishing a Flutter App: Signing, Release Builds and Preparing for Myket, Bazaar and Google Play

Your app works on the emulator; great. Now you need to get it to users. This guide walks through preparing an Android release, from signing to uploading to stores.

#1. Identifier and version

  • The applicationId (like ir.example.myapp) is your app's unique identity and must not change after release.
  • The version lives in pubspec.yaml:
version: 1.0.0+1

The number before + is the display version (versionName) and the one after is the build number (versionCode). Every new release needs a higher versionCode.

#2. Icon and name

Use the flutter_launcher_icons package to generate the icon in every size. Set the app's display name in android/app/src/main/AndroidManifest.xml (the android:label value).

#3. Creating the signing key (keystore)

An Android app must be signed with a digital key. Create it once:

keytool -genkey -v -keystore upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload

Keep the keystore file and its password somewhere safe and never put them in your code repository (git). If you lose them you cannot publish updates to the same app.

Then create android/key.properties with the key values and reference it from the signingConfigs section of android/app/build.gradle. key.properties must not be committed either.

#4. Building the release

flutter build apk --release        # for Myket, Bazaar and direct download
flutter build appbundle --release  # required format for Google Play

Outputs appear under build/app/outputs/. To reduce size you can build a separate APK per architecture:

flutter build apk --release --split-per-abi

#5. Test before you submit

Install the release build on a real phone; some bugs only show up in release (for example the internet permission, which must be declared in AndroidManifest.xml). Install the output of flutter build apk --release and try every main flow.

#6. Prepare the store listing

  • A short, appealing name, a short description and a full description.
  • An icon and at least 4 to 5 real screenshots.
  • The right category and relevant keywords.
  • A link to a privacy policy (required by Google Play).

#7. Uploading to the stores

  • Myket and Cafe Bazaar: create a developer panel, upload the APK and complete the listing. It is published after the store team reviews it.
  • Google Play: needs a developer account, the AAB format, and the content and privacy forms completed.

#8. After release

Read user reviews, enable crash reporting (such as Firebase Crashlytics) and ship updates with a higher versionCode.

#Final checklist

  • applicationId and version are correct.
  • The keystore is safe and backed up.
  • The release build was tested on a real phone.
  • Screenshots and texts are ready.

Go through these eight steps carefully once and later releases take only a few minutes.

Learn Flutter the professional, project-based way

The FastFlutter VIP course takes you from zero to a published app, with direct support from the instructor.

View the VIP course