Pendahuluan

Development Android di WSL (Windows Subsystem for Linux) bisa menjadi solusi menarik, terutama jika ingin menghindari penggunaan Android Studio yang berat dan berukuran besar. Pengalaman ini berawal dari kebutuhan instalasi Flutter untuk mata kuliah Mobile Computing. Karena laptop dengan spesifikasi terbatas, WSL dipilih agar proses development lebih ringan dan efisien.

Instalasi Flutter, Java, dan Command Line Tools

Instalasi Java

Flutter membutuhkan Java untuk membangun aplikasi Android. Instalasi Java dapat dilakukan menggunakan APT. Disarankan menggunakan versi Java 11 atau 17, namun Java 18 juga bisa digunakan:

sudo apt update
sudo apt install openjdk-18-jdk

Verifikasi instalasi Java:

java --version

Contoh output:

openjdk 18.0.2-ea 2022-07-19
OpenJDK Runtime Environment (build 18.0.2-ea+9-Ubuntu-222.04)
OpenJDK 64-Bit Server VM (build 18.0.2-ea+9-Ubuntu-222.04, mixed mode, sharing)

Struktur Folder

Agar lebih rapi, simpan semua tools di satu folder, misalnya /opt/Android:

sudo mkdir -p /opt/Android

Instalasi Flutter

Unduh Flutter versi terbaru dari flutter.dev. Setelah diunduh, ekstrak dan pindahkan ke folder tujuan:

tar xf flutter_linux_3.13.6-stable.tar.xz
sudo mv flutter /opt/Android/

Instalasi Android Command Line Tools

Android Command Line Tools diperlukan untuk mengelola SDK tanpa Android Studio. Unduh dari halaman resmi Android.

Ekstrak file yang sudah diunduh:

unzip commandlinetools-linux-10406996_latest.zip

Buat folder latest di dalam cmdline-tools dan pindahkan semua file ke dalamnya:

cd cmdline-tools
mkdir latest
mv * latest/
cd ..
sudo mv cmdline-tools /opt/Android/

Menyiapkan Environment Variables

Tambahkan variabel lingkungan berikut ke ~/.bashrc atau ~/.zshrc:

export ANDROID_HOME=/opt/Android
export PATH=$ANDROID_HOME/cmdline-tools/latest:$PATH
export PATH=$ANDROID_HOME/cmdline-tools/latest/bin:$PATH
export PATH=$ANDROID_HOME/platform-tools:$PATH

# Flutter
export FLUTTER_HOME=$ANDROID_HOME/flutter
export PATH=$FLUTTER_HOME/bin:$PATH

Jalankan source ~/.bashrc agar perubahan berlaku.

Instalasi Android SDK

Gunakan sdkmanager untuk menginstal komponen yang dibutuhkan Flutter:

sdkmanager --list
sdkmanager "platform-tools" "platforms;android-33" "build-tools;33.0.0"
sdkmanager --licenses

Pastikan semua lisensi diterima.

Instalasi Prasyarat Linux

Agar Flutter dapat membangun aplikasi dengan lancar di Linux, instal beberapa paket berikut:

sudo apt install clang cmake ninja-build pkg-config libgtk-3-dev liblzma-dev libstdc++-12-dev

Verifikasi Instalasi

Cek instalasi dengan perintah berikut:

flutter doctor -v

Contoh output:

[✓] Flutter (Channel stable, 3.13.6, on Ubuntu 22.04.3 LTS 5.15.90.1-microsoft-standard-WSL2, locale C.UTF-8)
[!] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    ! Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses
[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
[✓] Linux toolchain - develop for Linux desktop
[!] Android Studio (not installed)
[✓] Connected device (1 available)
[✓] Network resources
! Doctor found issues in 3 categories.

Jika ada masalah lisensi, jalankan:

flutter doctor --android-licenses

Penutup

Dengan langkah-langkah di atas, Flutter dapat dijalankan di WSL tanpa perlu menginstal Android Studio. Pastikan untuk selalu menggunakan versi terbaru dari Flutter dan Android Command Line Tools. Jika ingin menjalankan emulator, gunakan emulator di Windows atau perangkat fisik, karena emulator Android belum didukung penuh di WSL.