Today's Objective
By the end of this lesson you will understand build and deploy deeply enough to apply it immediately in real projects.
# Build release Android APK
flutter build apk --release
# or split by ABI (smaller files):
flutter build apk --split-per-abi
# Build Android App Bundle (required for Play Store)
flutter build appbundle --release
# Build iOS (requires Mac + Xcode)
flutter build ios --release
# pubspec.yaml — app identity
name: my_app
description: A new Flutter project.
version: 1.0.0+1 # version+buildNumber
flutter:
uses-material-design: true
assets:
- assets/images/
fonts:
- family: DM Sans
fonts:
- asset: assets/fonts/DMSans-Regular.ttf
# Build and upload to Firebase App Distribution (for testing)
flutter pub add --dev firebase_app_distribution
flutter build apk --release
firebase appdistribution:distribute build/app/outputs/flutter-apk/app-release.apk \
--app YOUR_APP_ID \
--groups "testers"
Tip: Use flutter build --obfuscate --split-debug-info=./debug-info to shrink and protect your release binary.
Exercise: Publish to the Play Store
Run flutter build appbundle --release Open Google Play Console and create a new app Upload the .aab file to Internal Testing track Fill in store listing: icon, screenshots, description Promote to Production after testing
Day 5 Summary
version: 1.0.0+1 maps to versionName+versionCode App Bundle (.aab) is smaller than APK for Play Store iOS requires a Mac with Xcode and an Apple account Obfuscation hides class/method names in release builds Firebase App Distribution is free for beta testing
← Previous
HTTP and JSON
Course Complete 🎉
Back to Flutter in 5 Days
Course Complete
Completing all five days means having a solid working knowledge of Flutter. The skills here translate directly to real projects. The next step is practice — pick a project and build something with what was learned.
Supporting Videos & Reading
Go deeper with these external references.
Day 5 Checkpoint
Before moving on, verify you can answer these without looking:
What is the core concept introduced in this lesson, and why does it matter?
What are the two or three most common mistakes practitioners make with this topic?
Can you explain the key code pattern from this lesson to a colleague in plain language?
What would break first if you skipped the safeguards or best practices described here?
How does today's topic connect to what comes in Day the final lesson?
Back to Course
Flutter — Full Course Overview
→
“Whatever you do, work at it with all your heart.” — Colossians 3:23
“For God so loved the world, that he gave his only Son, that whoever believes in him should not perish but have eternal life.” — John 3:16