Preparing for release means making sure the app is stable, secure, signed, and ready for users. A release is not just a successful build.
Build Variants
Android projects usually have debug and release builds.
Debug builds are for development. Release builds are optimized and signed for distribution.
./gradlew assembleRelease
Before release, run the app as a release build if possible. Some bugs only appear with minification, different config values, or disabled debug tools.
App Versioning
Every release should have a version name and version code.
versionCode = 2
versionName = "1.1.0"
versionCode must increase for every Play Store upload. versionName is shown to users.
Signing
Android release builds must be signed. Keep signing keys private. Never commit keystore files or passwords to Git.
Use environment variables, encrypted secrets, or Play App Signing where appropriate.
Release Checklist
- App launches successfully
- Main flows tested
- No debug-only screens exposed
- No test API endpoints
- App icon and name are correct
- Permissions are justified
- Privacy policy is ready if needed
- Crash reporting is configured
- Version code is incremented
Test On Real Devices
Emulators are useful, but real devices reveal performance, keyboard, camera, network, and manufacturer-specific issues.
Test at least:
- small screen
- large screen
- dark mode
- poor network
- app process killed and reopened
Practice
Create a release checklist for one of your sample apps. Build a release APK or AAB and verify the app name, icon, and main flow.
Summary
Release preparation is about confidence. Build, sign, test, version, review permissions, and protect secrets before sending an app to users.