Bỏ qua để đến nội dung

📦 Build & Deploy

Học cách đóng gói và phân phối ứng dụng Flet. ⏱️ 20 phút

Nắm vững:

  • Build cho desktop (Windows, macOS, Linux)
  • Build cho mobile (Android, iOS)
  • Build cho web
  • Deploy options

Flet cung cấp CLI để build ứng dụng:

Terminal window
# Xem các commands
flet --help
# Build commands
flet build --help
Terminal window
flet build windows

Output: build/windows/ chứa file .exe

Terminal window
flet build macos

Output: build/macos/ chứa .app bundle

Terminal window
flet build linux
Terminal window
flet build web

Output: build/web/ chứa static files để deploy

Terminal window
flet build web --base-url /my-app/
flet build web --web-renderer canvaskit # Hoặc html

Yêu cầu:

  • Java JDK (11+)
  • Android SDK
Terminal window
# APK để test
flet build apk
# AAB cho Google Play
flet build aab

Yêu cầu:

  • macOS
  • Xcode
  • Apple Developer account
Terminal window
flet build ipa
Terminal window
flet build windows \
--product "My App" \
--org "com.mycompany" \
--build-number 1 \
--build-version "1.0.0"
Terminal window
# Tạo file assets/icon.png (1024x1024)
flet build windows --icon assets/icon.png
Terminal window
flet build apk \
--splash assets/splash.png \
--splash-color "#ffffff"

📁 Cấu trúc dự án được khuyến nghị

Phần tiêu đề “📁 Cấu trúc dự án được khuyến nghị”
my-flet-app/
├── main.py # Entry point
├── assets/ # Tài nguyên
│ ├── icon.png # App icon (1024x1024)
│ ├── splash.png # Splash screen
│ └── images/
├── pyproject.toml # Dependencies
└── .gitignore
[project]
name = "my-flet-app"
version = "1.0.0"
dependencies = [
"flet[all]>=0.80.0",
]
[tool.flet]
app = "main.py"
product = "My App"
org = "com.mycompany"

Static hosting (sau khi flet build web):

  • Cloudflare Pages
  • Netlify
  • Vercel
  • GitHub Pages
Terminal window
# Ví dụ: Deploy với Cloudflare Pages
cd build/web
npx wrangler pages deploy .

Nếu cần server-side rendering:

Terminal window
# Chạy như web server
flet run --web --host 0.0.0.0 --port 8080 main.py

Deploy trên:

  • Docker + VPS
  • Cloud Run
  • Heroku
FROM python:3.11-slim
WORKDIR /app
COPY . .
RUN pip install flet[all]
CMD ["flet", "run", "--web", "--host", "0.0.0.0", "--port", "8080", "main.py"]
  1. Build: flet build aab
  2. Tạo Google Play Developer account ($25 one-time)
  3. Upload .aab file lên Play Console
  4. Điền thông tin app, screenshots
  5. Submit for review
  1. Build: flet build ipa
  2. Tạo Apple Developer account ($99/year)
  3. Mở Xcode để archive và submit
  4. Dùng App Store Connect
Issue Solution
“Python not found” Đảm bảo Python trong PATH
“Flutter SDK not found” Cài Flutter, thêm vào PATH
Android build fails Kiểm tra JAVA_HOME và ANDROID_HOME
iOS build fails Xcode updated, certificates valid
Terminal window
# Kiểm tra Flutter (Flet sử dụng Flutter)
flutter doctor
# Kiểm tra Python
python --version
Command Output
flet build windows .exe
flet build macos .app
flet build linux executable
flet build web static HTML/JS
flet build apk .apk (Android)
flet build aab .aab (Play Store)
flet build ipa .ipa (iOS)

Bạn đã hoàn thành chuỗi tutorial về Flet! 🎊

Tổng kết những gì bạn đã học:

  • ✅ Cài đặt và cấu trúc Flet
  • ✅ Declarative UI với Components, Observables, Hooks
  • ✅ Layouts và Controls
  • ✅ Event handling
  • ✅ Navigation và Theming
  • ✅ File operations và Async
  • ✅ Build và Deploy

Chúc bạn xây dựng được nhiều ứng dụng tuyệt vời với Flet! 🚀