Beginner · Flutter setup and your first app · topic 13 of 50 · 35 min
Installing Flutter
Explanation
What you need
| Piece | Why |
|---|---|
| Flutter SDK | The framework, the flutter command and the Dart SDK (bundled) |
| An editor: VS Code or Android Studio | With the Flutter and Dart extensions for completion, debugging and hot reload |
| Android Studio (or at least its SDK) | The Android SDK, build tools and the emulator, needed to build Android apps |
| A device | An emulator, or your own Android phone with USB debugging |
| A Mac with Xcode (optional) | Only required to build and run iOS apps |
Installing
- Follow the official guide at docs.flutter.dev/get-started/install for your operating system. A common route is installing VS Code and its Flutter extension, which can download the SDK for you; or download the SDK zip and extract it to a simple path like C:\src\flutter (avoid folders with spaces or that need admin rights, such as Program Files).
- Add flutter\bin to your PATH, so the flutter command works in any terminal.
- Install Android Studio and, through its SDK Manager, the Android SDK, command-line tools and an emulator image.
- Run flutter doctor and fix each item it reports.
flutter --version
flutter doctor
flutter doctor --android-licenses # accept Android SDK licences (type y)
flutter devices # list connected phones and emulatorsReading flutter doctor
[✓] Flutter (Channel stable, 3.x.x, on Microsoft Windows ...)
[✓] Windows Version
[!] Android toolchain - develop for Android devices
! Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses
[✓] Chrome - develop for the web
[✗] Visual Studio - develop Windows apps
✗ Visual Studio not installed; this is necessary to develop Windows apps.
[✓] Android Studio
[✓] Connected device (2 available)A PATH is the list of folders your terminal searches for commands. If "flutter is not recognized" appears, the flutter\bin folder is not on your PATH, or you need to open a new terminal after changing it.
Running on a phone or emulator
For an Android phone: enable Developer options (tap Build number seven times in About phone), turn on USB debugging, connect with a data cable and accept the prompt. For an emulator: create one in Android Studio's Device Manager. Then flutter devices should list it. iPhones and the iOS Simulator need a Mac with Xcode; that is an Apple requirement.
Channels and upgrades
Flutter has release channels; use stable for real work. flutter upgrade moves you to the newest stable release. Upgrading can change behaviour slightly, so upgrade at the start of a task, not the day before a release, and run your tests after.
Common mistakes
- Installing the SDK in a path with spaces or one that needs admin rights: strange build errors. Use a simple path.
- Forgetting to accept Android licences: builds fail until you run flutter doctor --android-licenses.
- Trying to build iOS apps on Windows: not possible without a Mac.
- Ignoring doctor warnings for the platform you actually need.
Need help?
Stuck on a word or an idea? Search this course, or every course, and jump straight to the explanation or a worked question.
Try:
Watch the lesson
Installing Flutter · 1/6
You need the Flutter SDK, an editor with the Flutter extension, the Android SDK and a device.
Prefer a video by a teacher? Find free videos on “install flutter windows flutter doctor android licenses setup” on YouTube ↗
In real life: Setting up on a college lab computer
A student sets up Flutter on her own Windows laptop for a college project. flutter doctor shows a cross for Visual Studio and a warning for Android licences. She accepts the licences, ignores Visual Studio (she only needs Android), connects her phone with USB debugging, and sees it listed in flutter devices. Twenty minutes later her first app runs on her phone.
Practice (0/3 done)
Which command checks your Flutter setup and lists what is missing?
flutter doctor shows a cross for Visual Studio, but you only build Android apps. What should you do?
Install Flutter following the official guide, run flutter doctor until the Flutter, Android toolchain and your editor show ticks, then connect your phone (or start an emulator) and confirm it appears in flutter devices. Save the final flutter doctor output.
Quick quiz
Read more (free)
Related help
Before this, learn
This topic builds on these. If something here feels new, open them first.
Related topics
- Project structure and hot reloadFlutter setup and your first app · same module
- Everything is a widgetFlutter setup and your first app · same module
- Stateless and stateful widgetsFlutter setup and your first app · same module
- Setting up Android Studio, an emulator and your phoneKotlin and Android App Development · Android Studio and your first app
- Flutter on the web and desktopPublishing to the stores and the web
- Publishing on the Apple App StorePublishing to the stores and the web
Questions people ask about this
Open a question to see the answer and why. The first ones are this topic's own quiz, so try the quiz above before you peek.
Does the Flutter SDK include Dart?
Answer: Yes, Dart is bundled
The Flutter SDK ships with the Dart SDK.
What do you need to build an iOS app?
Answer: A Mac with Xcode
Apple requires Xcode on macOS.
"flutter is not recognized" in the terminal usually means…
Answer: flutter/bin is not on PATH, or the terminal was opened before PATH changed
Fix PATH and open a new terminal.
Which release channel should you use for real projects?
Answer: stable
stable is tested for production use.
What is the Android SDK?Related
Answer: The libraries and tools your app is built against
SDK means Software Development Kit.
How does Flutter render its UI?Related
Answer: It draws everything itself with its own engine
That is why it looks consistent everywhere.
What do you need to build a Flutter Windows desktop app?Related
Answer: Visual Studio with the C++ desktop workload
flutter doctor lists it.
Which key triggers hot restart in the flutter run terminal?Related
Pass the quiz (60% or more) or mark this topic as done when you are ready.
Your progress is saved on this device only.
Next steps
- 3 more topics in “Flutter setup and your first app” before its exam: Project structure and hot reload, Everything is a widget, Stateless and stateful widgets.
- Module 4 exam: Flutter setup and your first app · 12 questions · 20 min, without help. 4 topics of this module still to finish first.
- Then the next module, Layouts. 50 topics left in the course before the final exam.