Setting up Android for Flutter: Android Studio, SDK, emulator, phone
Egor Dolgov · 09.11.2026First, pick your system — the commands will match it.
To run a Flutter app on Android — in an emulator or on your own phone — you need Android Studio: Flutter takes the Android SDK, the build tools and the emulator from it. Flutter itself is installed separately ( Lesson 0 ) — the Flutter plugin in Android Studio is not enough for that.
The commands on this page run in a terminal: PowerShell on Windows, Terminal on macOS and Linux. How to open it and paste a command is on the
Installing Git
page.
flutter run
commands run in the project folder — we create the first project in
Lesson 1
.
Contents:
- Installing Android Studio
- Packages in the SDK Manager
- Licenses
- Emulator
- Your own phone
- Checking and running
- Common flutter doctor messages
- Summary
1. Installing Android Studio
Download the latest stable version from developer.android.com/studio and install it:
-
Windows
— run the downloaded
.exeand follow the setup wizard; -
macOS
— pick the file for your Mac (Apple chip or Intel chip), open the downloaded
.dmg, drag Android Studio into the Applications folder and launch it; - Linux — on 64-bit Ubuntu, first install the 32-bit libraries (the command from the Android documentation):
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386
Ubuntu 24.04 has no
libncurses5
package, and this command stops with “Unable to locate package”. The Android documentation hasn't updated the command for 24.04; the other packages exist in 24.04 — install them without
libncurses5:i386
:
sudo apt-get install libc6:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386
Then extract the downloaded archive into
/opt/
and start Android Studio (
xdg-user-dir DOWNLOAD
fills in your downloads folder):
sudo tar -xzf "$(xdg-user-dir DOWNLOAD)"/android-studio-*.tar.gz -C /opt && /opt/android-studio/bin/studio
On first launch the setup wizard offers to download the Android SDK components — accept.
Android Studio requirements: 8 GB of RAM and 8 GB of disk, or with the emulator — 16 GB of RAM and 16 GB of disk; 64-bit Windows 10, macOS 12 and later, or 64-bit Linux with GNOME, KDE or Unity and glibc 2.31 or later. Android Studio doesn't currently run on Windows and Linux computers with ARM processors.
2. Packages in the SDK Manager
Open the SDK Manager: in the welcome dialog — More Actions → SDK Manager , with a project open — Tools → SDK Manager .
- On the SDK Platforms tab, check that the first entry with API Level 36 is selected.
- On the SDK Tools tab, select:
- Android SDK Build-Tools
- Android SDK Command-line Tools
- Android Emulator
- Android SDK Platform-Tools
- CMake
- NDK (Side by side)
Click Apply , then OK in the Confirm Change dialog, and Finish when the installation is done.
3. Licenses
Flutter won't build an Android app until the Android SDK licenses are accepted:
flutter doctor --android-licenses
The command shows the licenses one by one — answer
y
to each. At the end you'll see:
All SDK package licenses accepted.
You don't need to install Java separately: Flutter uses the JDK that comes with Android Studio.
4. Emulator
An emulator is a virtual phone on your computer. First check hardware acceleration, then create the device.
Hardware acceleration.
- Windows — the Windows Hypervisor Platform feature: click Start, type “Windows features” and open Turn Windows features on or off , check Windows Hypervisor Platform and restart after installation. It requires Windows 10 version 1803 or later; virtualization (Intel VT-x or AMD-V) must be enabled in the BIOS.
- macOS — nothing to install: the emulator uses the built-in Hypervisor.Framework.
- Linux — you need KVM. To check on Ubuntu:
sudo apt-get install -y cpu-checker && sudo kvm-ok
You should see
INFO: /dev/kvm exists
and
KVM acceleration can be used
. If it says
KVM acceleration can NOT be used
, enable virtualization in the BIOS.
An accelerated emulator won't run inside another virtual machine (VirtualBox, VMware, Docker).
Creating the emulator.
- Open the Device Manager: in the welcome dialog — More Actions → Virtual Device Manager (with a project open — Tools → Device Manager ).
- Click + ( Create Virtual Device ), choose Phone , a phone model and click Next .
- Choose a system image: x86 Images for a regular computer, ARM Images for an ARM computer (such as an Apple Silicon Mac). If the image has a download icon, download it.
- In Additional settings → Emulated Performance → Graphics acceleration , choose an option with Hardware in it and click Finish .
- In the Device Manager, click Run next to the new device. The first launch may take about a minute; later ones are faster.
5. Your own phone
The menu names below are as in Android itself (Google Pixel); on other phones they may be named or placed differently.
- Developer options. Open Settings → About phone and tap Build number seven times, until you see “You are now a developer!”. On Samsung Galaxy it is under Settings → About phone → Software information → Build number .
- USB debugging. On Android 9 and later: Settings → System → Advanced → Developer options → USB debugging .
- Connect the phone with a cable. When “Allow USB debugging?” appears, tap Allow .
On Windows the phone needs its maker's USB driver (for Google devices — the Google USB Driver from the SDK Manager). On macOS and Linux no driver is needed; on Ubuntu, add yourself to the
plugdev
group:
sudo usermod -aG plugdev $LOGNAME
Groups update when you log in — log out and log back in.
6. Checking and running
First check the whole setup:
flutter doctor
The
Android toolchain - develop for Android devices
line should show
[✓]
; if it shows
[!]
, the lines under it say what is missing (section 7). Then list the connected devices:
flutter devices
The list should include a device with the
android
platform, for example:
2406APNFAG (mobile) • <serial> • android-arm64 • Android 16 (API 36)
Run on it in the project folder, with the device id from the second column:
flutter run -d <device id>
7. Common flutter doctor messages
| Message | What to do |
|---|---|
Android licenses not accepted
/
Some Android licenses not accepted
|
flutter doctor --android-licenses
|
Android license status unknown
|
Install
Android SDK Command-line Tools (latest)
in the SDK Manager, then
flutter doctor --android-licenses
|
cmdline-tools component is missing
|
Install Android SDK Command-line Tools in the SDK Manager |
Unable to locate Android SDK
|
Install Android Studio and download the SDK components on first launch; if the SDK is in a custom folder —
flutter config --android-sdk <path>
|
8. Summary
- Android Studio gives Flutter the Android SDK and the emulator; the packages are in the SDK Manager, API 36.
-
Licenses —
flutter doctor --android-licenses. - Emulator — the Device Manager and hardware acceleration; phone — developer options and USB debugging.
-
Check with
flutter devices, run withflutter run -d <id>.