Chạy ứng dụng Flutter
1. Kiểm tra thiết bị có sẵn
flutter devicesKết quả ví dụ:
3 connected devices:
iPhone 15 Pro (mobile) • iOS Simulator
Android SDK (mobile) • Android Emulator
Chrome (web) • chrome
macOS (desktop) • macos2. Chạy trên Emulator/Simulator
iOS Simulator (macOS only)
# Mở Simulator
open -a Simulator
# Chạy app
flutter runHoặc từ Xcode: Open Xcode → Open Developer Tool → Simulator
Android Emulator
# Liệt kê AVDs
flutter emulators
# Khởi động emulator
flutter emulators --launch <emulator_id>
# Chạy app
flutter runHoặc từ Android Studio: Open AVD Manager → Launch
3. Chạy trên thiết bị thật
Android
-
Bật Developer Options trên thiết bị:
- Vào Settings → About Phone
- Tap Build Number 7 lần
-
Bật USB Debugging:
- Settings → Developer Options → USB Debugging
-
Kết nối USB và chạy:
flutter run
iOS
- Kết nối iPhone qua USB
- Trust máy tính trên iPhone
- Mở Xcode, đăng nhập Apple ID
- Cấu hình Signing trong Xcode
- Chạy:
flutter run
4. Chạy trên Web
flutter run -d chromeHoặc chỉ định browser:
flutter run -d web-server --web-port 80805. Chạy trên Desktop
# macOS
flutter run -d macos
# Windows
flutter run -d windows
# Linux
flutter run -d linux6. Các lệnh hữu ích khi chạy
| Phím | Tác dụng |
|---|---|
r | Hot Reload - reload code, giữ state |
R | Hot Restart - restart app, reset state |
h | Hiển thị help |
d | Detach (giữ app chạy) |
c | Clear console |
q | Quit |
7. Chọn thiết bị cụ thể
# Liệt kê device IDs
flutter devices
# Chạy trên device cụ thể
flutter run -d <device_id>
# Ví dụ
flutter run -d iPhone\ 15\ Pro
flutter run -d emulator-5554
flutter run -d chrome8. Chạy với các flags
# Debug mode (default)
flutter run
# Profile mode (performance testing)
flutter run --profile
# Release mode
flutter run --release
# Verbose output
flutter run -v9. Hot Reload vs Hot Restart
| Feature | Hot Reload | Hot Restart |
|---|---|---|
| Phím | r | R |
| Tốc độ | ~1 giây | ~5 giây |
| State | Giữ nguyên | Reset |
| Use case | Thay đổi UI | Thay đổi logic |
Hot Reload hoạt động với:
- Thay đổi widget build()
- Thêm/sửa functions
- Thay đổi styles
Cần Hot Restart khi:
- Thay đổi main()
- Thay đổi initState()
- Thêm biến global
- Thay đổi enum values
10. Xử lý lỗi thường gặp
”No connected devices"
# Kiểm tra lại
flutter devices
# Khởi động emulator
flutter emulators --launch <name>"Gradle build failed” (Android)
cd android
./gradlew clean
cd ..
flutter run“Xcode build failed” (iOS)
cd ios
pod install
cd ..
flutter run📝 Tóm tắt
| Platform | Command |
|---|---|
| Default (auto-detect) | flutter run |
| iOS Simulator | flutter run -d iPhone |
| Android Emulator | flutter run -d emulator |
| Chrome | flutter run -d chrome |
| macOS | flutter run -d macos |
| Thiết bị cụ thể | flutter run -d <device_id> |
Nhớ:
r= Hot Reload (nhanh, giữ state)R= Hot Restart (chậm hơn, reset state)q= Quit
Last updated on