Guide complet des commandes Flutter CLI : créez des applications mobiles natives iOS et Android avec Dart et le framework Flutter de Google.
flutter doctor
Vérifie l'installation de Flutter et affiche l'état des dépendances
-v--verbose--android-licenses--suppress-analytics
flutter doctor -v
Vérification détaillée avec logs complets
-v--verbose
flutter doctor --android-licenses
Accepte les licences Android SDK
flutter create mon_app
Crée un nouveau projet Flutter
--org--project-name--description--template--platforms--androidx--ios-language--android-language--pub--overwrite--empty--sample
flutter create --org com.monentreprise mon_app
Crée un projet avec identifiant d'organisation personnalisé
--org
flutter create --template=package mon_package
Crée un package Flutter (bibliothèque)
--template
flutter create --template=plugin mon_plugin
Crée un plugin Flutter (code natif)
--template--platforms
flutter create --template=module mon_module
Crée un module Flutter (intégration)
--template
flutter create --template=skeleton mon_app
Crée un projet squelette (structure minimale)
--template
flutter create --sample=material.AlertDialog.1 mon_app
Crée un projet avec un exemple spécifique
--sample
flutter create --platforms=android,ios mon_app
Crée un projet pour Android et iOS uniquement
--platforms
flutter create --platforms=android,ios,web,linux,macos,windows mon_app
Crée un projet pour toutes les plateformes
--platforms
flutter run
Lance l'application sur l'appareil connecté
-d--device-id--release⚠️--profile--debug--flavor⚠️--target--route⚠️--observatory-port--enable-software-rendering⚠️--skia-deterministic-rendering⚠️--trace-startup--verbose-v--pid-file⚠️--fast-start⚠️--web-port--web-hostname--web-use-html-renderer⚠️--web-use-canvaskit--web-use-skwasm--web-header-cross-origin-protected-headers--web-allow-http--web-enable-expression-evaluation--web-renderer⚠️--dart-define--dart-define-from-file⚠️--enable-dart-profiling--disable-dart-dev--disable-service-auth-codes--disable-service-port-public--disable-service-publication--disable-service-http-log--no-fast-start⚠️--no-pub--no-track-widget-creation--no-sound-null-safety--no-devtools--cache-sksl--write-sksl-on-exit--bundle-sksl-path--purge-persistent-cache--enable-impeller--enable-vulkan-validation--enable-metal-validation--endless-trace-buffer--trace-skia--trace-skia-allowlist--trace-skia-ignorelist--trace-whitelist--verbose-system-logs--start-paused--disable-service-auth-codes--disable-service-port-public--disable-service-publication--enable-service-port-fallback⚠️--dds-port--devtools-server-address--machine--device-timeout--device-connection--debug-port--profile-vm--screenshot--route⚠️--use-test-fonts⚠️--enable-dart-profiling--dart-flags⚠️--no-android-gradle-daemon--frontend-server-starter-path⚠️--web-application-bootstrapping-library--local-engine--local-engine-host--local-engine-src-path--local-web-sdk--local-web-sdk-host--no-native-null-assertions--enable-experiment--initialize-from-dill⚠️--assume-initialize-from-dill-up-to-date⚠️--output-dill--precompile--extra-gen-snapshot-options--extra-front-end-options⚠️--build-number--build-name--split-debug-info--obfuscate--dart-define--dart-define-from-file⚠️
flutter run -d android
Lance sur l'émulateur/appareil Android
-d--device-id
flutter run -d iphone
Lance sur le simulateur iPhone
-d--device-id
flutter run -d chrome
Lance sur Chrome (web)
-d--device-id--web-port--web-renderer⚠️
flutter run -d macos
Lance sur macOS
-d--device-id
flutter run -d windows
Lance sur Windows
-d--device-id
flutter run -d linux
Lance sur Linux
-d--device-id
flutter run --release
Lance en mode release (performances optimales)
--release⚠️
flutter run --profile
Lance en mode profile (analyse de performances)
--profile
flutter run --debug
Lance en mode debug (développement)
--debug
flutter run --flavor production
Lance avec une flavor spécifique
--flavor⚠️
flutter run --target lib/main_dev.dart
Lance avec un point d'entrée alternatif
--target-t
flutter run --dart-define=API_URL=https://api.example.com
Définit des variables d'environnement Dart
--dart-define
flutter run --dart-define-from-file=config.json
Charge les variables depuis un fichier
--dart-define-from-file⚠️
flutter run --web-renderer canvaskit
Utilise le renderer CanvasKit pour le web
--web-renderer⚠️
flutter run --web-renderer html
Utilise le renderer HTML pour le web
--web-renderer⚠️
flutter run --enable-impeller
Active le moteur de rendu Impeller (expérimental)
--enable-impeller
flutter run --obfuscate --split-debug-info=build/debug
Lance avec obfuscation du code
--obfuscate--split-debug-info
flutter run --verbose
Lance avec logs détaillés
-v--verbose
flutter build apk
Construit un APK Android
--debug--profile--release⚠️--flavor⚠️--target--target-platform--split-per-abi--split-debug-info--obfuscate--dart-define--dart-define-from-file⚠️--no-pub--build-number--build-name--no-tree-shake-icons--no-shrink--no-sound-null-safety--enable-impeller--verbose-v
flutter build apk --release
Construit un APK release
--release⚠️
flutter build apk --split-per-abi
Construit des APK séparés par architecture (armeabi-v7a, arm64-v8a, x86_64)
--split-per-abi
flutter build apk --target-platform android-arm64
Construit pour une architecture spécifique
--target-platform
flutter build appbundle
Construit un Android App Bundle (.aab) pour le Play Store
--debug--profile--release⚠️--flavor⚠️--target--target-platform--split-debug-info--obfuscate--dart-define--dart-define-from-file⚠️--no-pub--build-number--build-name--no-tree-shake-icons--no-shrink--no-sound-null-safety--enable-impeller--verbose-v
flutter build ios
Construit une application iOS (.app)
--debug--profile--release⚠️--flavor⚠️--target--simulator--no-codesign--split-debug-info--obfuscate--dart-define--dart-define-from-file⚠️--no-pub--build-number--build-name--no-tree-shake-icons--no-sound-null-safety--enable-impeller--verbose-v--cocoapods--force-optimizations⚠️--sksl-path
flutter build ios --release
Construit une application iOS release
--release⚠️
flutter build ios --simulator
Construit pour le simulateur iOS
--simulator
flutter build ios --no-codesign
Construit sans signature (test uniquement)
--no-codesign
flutter build ipa
Construit une archive iOS (.ipa) pour distribution
--debug--profile--release⚠️--flavor⚠️--target--split-debug-info--obfuscate--dart-define--dart-define-from-file⚠️--no-pub--build-number--build-name--no-tree-shake-icons--no-sound-null-safety--enable-impeller--verbose-v--export-options-plist--export-method--no-codesign
flutter build web
Construit l'application pour le web
--debug--profile--release⚠️--flavor⚠️--target--web-renderer⚠️--base-href--csp--dart-define--dart-define-from-file⚠️--no-pub--no-tree-shake-icons--no-sound-null-safety--pwa-strategy--source-maps--verbose-v--wasm
flutter build web --release
Construit pour le web en release
--release⚠️
flutter build web --web-renderer canvaskit
Construit avec le renderer CanvasKit
--web-renderer⚠️
flutter build web --base-href /monapp/
Définit l'URL de base pour le déploiement
--base-href
flutter build web --wasm
Compile en WebAssembly (expérimental)
--wasm
flutter build macos
Construit l'application macOS
--debug--profile--release⚠️--flavor⚠️--target--split-debug-info--obfuscate--dart-define--dart-define-from-file⚠️--no-pub--build-number--build-name--no-tree-shake-icons--no-sound-null-safety--enable-impeller--verbose-v--codesign
flutter build windows
Construit l'application Windows
--debug--profile--release⚠️--flavor⚠️--target--split-debug-info--obfuscate--dart-define--dart-define-from-file⚠️--no-pub--build-number--build-name--no-tree-shake-icons--no-sound-null-safety--enable-impeller--verbose-v
flutter build linux
Construit l'application Linux
--debug--profile--release⚠️--flavor⚠️--target--target-platform--split-debug-info--obfuscate--dart-define--dart-define-from-file⚠️--no-pub--build-number--build-name--no-tree-shake-icons--no-sound-null-safety--enable-impeller--verbose-v
flutter build aar
Construit une bibliothèque Android Archive (.aar) pour intégration native
--debug--profile--release⚠️--flavor⚠️--target--split-debug-info--obfuscate--dart-define--dart-define-from-file⚠️--no-pub--build-number--build-name--no-tree-shake-icons--no-shrink--no-sound-null-safety--verbose-v
flutter build bundle
Construit le bundle Flutter (assets et code compilé)
--debug--profile--release⚠️--flavor⚠️--target--asset-dir--dart-define--dart-define-from-file⚠️--no-pub--no-tree-shake-icons--no-sound-null-safety--verbose-v--precompile
flutter clean
Supprime les dossiers de build et le cache
--verbose-v
flutter pub get
Télécharge les dépendances listées dans pubspec.yaml
--verbose-v--offline--no-precompile--enforce-lockfile--no-example
flutter pub upgrade
Met à jour les dépendances vers les dernières versions compatibles
--verbose-v--major-versions--null-safety--no-precompile--no-example
flutter pub add nom_package
Ajoute une dépendance au projet
--dev-d--git--path--sdk--version--verbose-v--no-example
flutter pub add nom_package --dev
Ajoute une dépendance de développement
--dev-d
flutter pub add nom_package --git url=https://github.com/user/repo
Ajoute une dépendance depuis Git
--git--ref⚠️--path
flutter pub remove nom_package
Supprime une dépendance du projet
--verbose-v--no-example
flutter pub outdated
Affiche les dépendances obsolètes
--verbose-v--json--no-color--no-dependency-overrides--no-dev-dependencies--no-transitive-dependencies--no-prereleases--up-to-date--show-all
flutter pub deps
Affiche le graphe des dépendances
--verbose-v--style--json--no-dev
flutter pub cache repair
Répare le cache des packages
--verbose-v
flutter pub cache clean
Nettoie le cache des packages
--verbose-v--force⚠️
flutter pub global activate nom_package
Active un package globalement
--source-s--version--overwrite--verbose-v
flutter pub global deactivate nom_package
Désactive un package global
--verbose-v
flutter pub global list
Liste les packages globaux activés
--verbose-v
flutter pub global run nom_package
Exécute un package global
--verbose-v--enable-asserts--enable-experiment--packages-dir
flutter pub publish
Publie un package sur pub.dev
--dry-run⚠️--force⚠️--verbose-v--server
flutter pub publish --dry-run
Simule la publication d'un package
--dry-run⚠️
flutter pub uploader add user@example.com
Ajoute un uploader au package
--verbose-v
flutter pub uploader remove user@example.com
Retire un uploader du package
--verbose-v
flutter pub token add https://pub.dev
Ajoute un token d'authentification
--verbose-v--env-var
flutter pub token remove https://pub.dev
Supprime un token d'authentification
--verbose-v
flutter pub token list
Liste les tokens d'authentification
--verbose-v
flutter test
Lance les tests unitaires
--name-n--plain-name--tags-t--exclude-tags-x--concurrency-j--timeout--pause-after-load--run-skipped⚠️--no-run-skipped⚠️--verbose-v--chain-stack-traces--coverage--merge-coverage--coverage-path--update-goldens--fatal-warnings⚠️--no-fatal-warnings⚠️--reporter⚠️--file-reporter⚠️--dart-define--dart-define-from-file⚠️--no-pub--sound-null-safety--no-sound-null-safety--test-randomize-ordering-seed⚠️--shard-index--total-shards--machine--start-paused--pause-after-load--debug--enable-vm-service--no-retry⚠️--fail-fast⚠️--no-test-assets--test-directory
flutter test --name "mon test"
Lance un test spécifique par nom
--name-n
flutter test --tags golden
Lance les tests avec un tag spécifique
--tags-t
flutter test --exclude-tags slow
Exclut les tests avec un tag spécifique
--exclude-tags-x
flutter test --coverage
Génère un rapport de couverture
--coverage--coverage-path
flutter test --concurrency=4
Lance les tests avec 4 workers parallèles
--concurrency-j
flutter test --update-goldens
Met à jour les images golden
--update-goldens
flutter test integration_test
Lance les tests d'intégration
--name-n--tags-t--exclude-tags-x--concurrency-j--timeout--verbose-v--coverage--dart-define--dart-define-from-file⚠️--no-pub
flutter drive
Lance les tests d'intégration sur appareil
--target-t--driver--browser-name--web-port--headless--android-emulator--use-application-binary--route⚠️--keep-app-running⚠️--flavor⚠️--dart-define--dart-define-from-file⚠️--verbose-v--profile--release⚠️--debug--no-android-gradle-daemon--no-build--no-pub--screenshot--observatory-port--enable-software-rendering⚠️--cache-sksl--write-sksl-on-exit--bundle-sksl-path--purge-persistent-cache--enable-impeller
flutter drive --target=test_driver/app.dart --driver=test_driver/app_test.dart
Lance un test drive spécifique
--target-t--driver
flutter analyze
Analyse statique du code Dart
--watch--write--dartdocs--congratulate--no-preamble--no-fatal-infos⚠️--no-fatal-warnings⚠️--fatal-infos⚠️--fatal-warnings⚠️--preamble--verbose-v--suggestions--no-current-directory--current-directory--current-package
flutter analyze --watch
Analyse en continu (mode watch)
--watch
flutter format .
Formate le code Dart (déprécié, utiliser dart format)
--set-exit-if-changed--show--output--verbose-v
dart format .
Formate le code Dart
--set-exit-if-changed--show--output--verbose-v--line-length-l--fix⚠️--dry-run⚠️--enable-experiment
dart format --line-length 120 .
Formate avec une longueur de ligne personnalisée
--line-length-l
dart fix --apply
Applique les corrections automatiques
--dry-run⚠️--apply--code
dart fix --dry-run
Simule les corrections sans les appliquer
--dry-run⚠️
flutter devices
Liste les appareils connectés
--machine--timeout--verbose-v
flutter emulators
Liste les émulateurs disponibles
--launch--name--verbose-v
flutter emulators --launch Pixel_4_API_33
Lance un émulateur spécifique
--launch
flutter emulators --create --name mon_emulateur
Crée un nouvel émulateur
--create--name
flutter logs
Affiche les logs des appareils connectés
--device-id-d--clear--verbose-v
flutter screenshot
Prend une capture d'écran de l'appareil
--output-o--device-id-d--type--observatory-uri--verbose-v--machine
flutter screenshot --output=capture.png
Sauvegarde la capture dans un fichier
--output-o
flutter attach
Attache à une application Flutter en cours d'exécution
--debug--profile--release⚠️--target--device-id-d--observatory-port--pid-file⚠️--machine--verbose-v--dart-define--dart-define-from-file⚠️--enable-dart-profiling--disable-service-auth-codes--debug-port--debug-uri--app-id--no-version-check
flutter install
Installe l'application sur l'appareil connecté
--device-id-d--device-timeout--uninstall-only--verbose-v
flutter upgrade
Met à jour Flutter SDK
--force⚠️--verbose-v--verify-only
flutter downgrade
Revient à la version précédente de Flutter
--verbose-v
flutter channel
Liste les canaux Flutter disponibles
--verbose-v
flutter channel stable
Passe sur le canal stable
--verbose-v
flutter channel beta
Passe sur le canal beta
--verbose-v
flutter channel dev
Passe sur le canal dev
--verbose-v
flutter channel master
Passe sur le canal master
--verbose-v
flutter config
Configure les paramètres Flutter
--enable-web--disable-web--enable-windows-desktop--disable-windows-desktop--enable-macos-desktop--disable-macos-desktop--enable-linux-desktop--disable-linux-desktop--enable-android--disable-android--enable-ios--disable-ios--enable-fuchsia⚠️--disable-fuchsia⚠️--enable-custom-devices--disable-custom-devices--enable-analytics--disable-analytics--clear-features⚠️--build-dir--android-sdk--android-studio-dir--jdk-dir--verbose-v--machine
flutter config --enable-web
Active le support web
--enable-web
flutter config --enable-windows-desktop
Active le support Windows desktop
--enable-windows-desktop
flutter config --enable-macos-desktop
Active le support macOS desktop
--enable-macos-desktop
flutter config --enable-linux-desktop
Active le support Linux desktop
--enable-linux-desktop
flutter config --disable-analytics
Désactive les analytics
--disable-analytics
flutter config --android-sdk /path/to/android/sdk
Définit le chemin du SDK Android
--android-sdk
flutter config --jdk-dir /path/to/jdk
Définit le chemin du JDK
--jdk-dir
flutter precache
Télécharge les artefacts de la plateforme en avance
--all-platforms--android--ios--web--windows--macos--linux--fuchsia⚠️--generic-ios--force⚠️--no-android--no-ios--no-web--no-windows--no-macos--no-linux--no-fuchsia⚠️--no-generic-ios--verbose-v
flutter precache --all-platforms
Télécharge les artefacts pour toutes les plateformes
--all-platforms
flutter gen-l10n
Génère les fichiers de localisation
--template-arb-file⚠️--output-localization-file⚠️--output-class--output-dir--preferred-supported-locales--header--header-file⚠️--use-deferred-loading--untranslated-messages-file⚠️--required-resource-attributes⚠️--nullable-getter--synthetic-package--project-dir--arb-dir--verbose-v
flutter create --platforms=android,ios --org com.example --template=plugin mon_plugin
Crée un plugin avec plates-formes spécifiques
--platforms--org--template
flutter pub run build_runner build
Lance la génération de code (build_runner)
--delete-conflicting-outputs--verbose-v--define--enable-experiment
flutter pub run build_runner watch
Surveille les fichiers et régénère automatiquement
--delete-conflicting-outputs--verbose-v--define
flutter pub run build_runner build --delete-conflicting-outputs
Régénère tout en supprimant les conflits
--delete-conflicting-outputs
flutter pub run build_runner clean
Nettoie les fichiers générés
--verbose-v
flutter pub run flutter_native_splash:create
Génère l'écran de démarrage natif
--path--flavor⚠️--background--color--image--branding--dark-background--dark-color--dark-image--dark-branding--android--ios--web--remove⚠️--restore⚠️
flutter pub run flutter_launcher_icons:main
Génère les icônes de l'application
--path--flavor⚠️
flutter pub run flutter_launcher_icons:remove
Supprime les icônes générées
--path--flavor⚠️
flutter pub run pigeon --input pigeons/schema.dart
Génère le code de communication natif avec Pigeon
--input--dart_out--objc_header_out--objc_source_out--java_out--java_package--cpp_header_out--cpp_source_out--copyright_header--dart_test_out--ast_out--verbose-v
flutter pub run dart_code_metrics:metrics analyze lib
Analyse les métriques de code (DCM)
--reporter⚠️--output-directory--exclude--ignore-exit-code--verbose-v--root-folder⚠️--sdk-path--print-config--fatal-style⚠️--fatal-performance⚠️--fatal-warnings⚠️--no-congratulate--monorepo--reporter-option⚠️--set-exit-on-violation-level
flutter pub run dart_code_metrics:metrics check-unused-files lib
Vérifie les fichiers inutilisés
--exclude--verbose-v--root-folder⚠️--sdk-path
flutter pub run dart_code_metrics:metrics check-unused-code lib
Vérifie le code inutilisé
--exclude--verbose-v--root-folder⚠️--sdk-path--fatal-on-unused⚠️
flutter pub run import_sorter:main
Trie les imports Dart
--no-comments--exit-if-changed--verbose-v
flutter symbolize --input crash.dmp --output symbolized.txt
Symbolise une trace de crash
--input-i--output-o--debug-info-d--verbose-v
flutter assemble
Assemble les ressources Flutter (bas niveau)
--output-o--input-i--target-t--define--performance-measurement-file⚠️--verbose-v--help
flutter bash-completion
Génère l'autocomplétion pour bash
--verbose-v
flutter zsh-completion
Génère l'autocomplétion pour zsh
--verbose-v
flutter fish-completion
Génère l'autocomplétion pour fish
--verbose-v
flutter update-packages
Met à jour les packages du SDK Flutter
--force-upgrade⚠️--paths--verbose-v
flutter make-host-app-editable
Rend les projets natifs modifiables
--verbose-v
flutter build web --pwa-strategy offline-first
Construit avec une stratégie PWA
--pwa-strategy
flutter build web --source-maps
Génère les source maps pour le web
--source-maps
flutter build web --csp
Génère les en-têtes Content Security Policy
--csp
flutter build ios-framework
Construit un framework iOS pour intégration
--output-o--cocoapods--no-debug--no-profile--no-release⚠️--xcframework--verbose-v
flutter build ios-framework --xcframework --output=build/ios
Construit un XCFramework
--xcframework--output
flutter build macos-framework
Construit un framework macOS pour intégration
--output-o--no-debug--no-profile--no-release⚠️--verbose-v
flutter build appbundle --target-platform android-arm,android-arm64
Construit un App Bundle pour architectures spécifiques
--target-platform
flutter build apk --obfuscate --split-debug-info=build/debug
Construit un APK obfusqué
--obfuscate--split-debug-info
flutter build ipa --export-method ad-hoc
Construit un IPA pour distribution ad-hoc
--export-method
flutter build ipa --export-options-plist exportOptions.plist
Construit avec un fichier d'options d'export
--export-options-plist
flutter run --cache-sksl
Lance en écrivant le cache SKSL
--cache-sksl
flutter run --bundle-sksl-path=flutter_01.sksl
Lance avec un cache SKSL pré-généré
--bundle-sksl-path
flutter help
Affiche l'aide générale de Flutter
--verbose-v<commande>⚠️