Dan Tech Academy
Sau bài này bạn sẽ
  • Cài JDK 17+, Android Studio bản stable và plugin Kotlin Multiplatform
  • Cài đúng Android SDK Platform 36 và chuẩn bị nơi chạy app: máy Android thật hoặc emulator, và iOS simulator nếu bạn có macOS
Thời lượng15 phút
Độ khóBeginner

Android Studio, JDK và KMP plugin

JDK 17+, Android Studio stable, plugin Kotlin Multiplatform, Xcode nếu bạn dùng macOS, và kdoctor để kiểm tra máy.

Khóa này giúp bạn bắt đầu với Kotlin Multiplatform: bằng một codebase Kotlin duy nhất, một bộ giao diện Compose, app của bạn chạy được trên cả Android và iOS.

Ngày đầu tiên chỉ có một việc: làm cho máy tính của bạn build được project KMP.

Đây là ngày nhiều người bỏ cuộc nhất, vì lỗi setup trông đáng sợ hơn lỗi code rất nhiều. Bạn chỉ phải làm đúng một lần.

Bạn Sẽ Chạy Được Trên Những Đâu

Build được app iOS thì bắt buộc phải có máy macOS.

Apple đặt giới hạn đó cho hệ sinh thái của mình.

Máy của bạnAndroidiOSHọc được khóa này không
WindowsKhôngCó. Bỏ qua các bước iOS, mọi thứ khác y hệt
LinuxKhôngCó. Như trên
macOS (Intel)Có, simulator chậm
macOS (Apple)Có, simulator chạy mượtCó, trải nghiệm tốt nhất

Nếu bạn dùng Windows hoặc Linux: đừng bỏ khóa này. Toàn bộ kiến trúc, code và bài tập đều nằm trong phần chia sẻ chung. Bạn chỉ mất phần bấm nút chạy trên iOS. Ngày nào có máy Mac, code của bạn chạy được ngay mà không cần sửa một dòng.

Yêu Cầu Máy Tính

Thành phầnTối thiểuKhuyến nghị
RAM8GB16GB
Ổ cứng trống25GB40GB+
OSWindows 10/11, macOS 14+, Ubuntu 22.04+Bản mới nhất

KMP nặng hơn Android thuần một chút vì phải build cho nhiều target. Nếu máy chỉ có 8GB RAM: bạn vẫn học được, chỉ cần ưu tiên chạy trên máy Android thật thay vì emulator.

Phần 1: JDK 17 Trở Lên

Gradle và Kotlin cần một JDK. Android Studio mang sẵn một bản JDK riêng.

Kiểm tra trước xem đã có chưa:

bash
java -version

Thấy số phiên bản từ 17 trở lên là đủ. Nếu báo lệnh không tồn tại hoặc số nhỏ hơn 17, cài Temurin JDK 21 - bản miễn phí, không cần đăng ký.

Vì sao 17 là sàn: Android Gradle Plugin 9.0.1 - phiên bản dùng để build toàn bộ code trong khóa này - từ chối chạy trên JDK cũ hơn.

Phần 2: Android Studio Và SDK Platform 36

Tải từ trang chính thức: developer.android.com/studio. Chọn bản stable mới nhất. Không chọn Canary hay Beta, các bản đó dành cho người cần tính năng mới và chấp nhận bug.

Bản Studio quá cũ sẽ không mở nổi project dùng AGP 9.0.1 - nó báo thẳng là cần bản mới hơn.

Khi trình cài đặt hỏi, giữ nguyên mặc định:

  • Android SDK: bắt buộc, đây là toolchain build app.
  • Android Virtual Device: giữ, kể cả khi bạn định dùng máy thật.

Lần tải SDK đầu tiên mất 10-20 phút. Cứ để nó chạy trong khi bạn pha một ly cà phê.

Xong rồi thì mở Settings → Languages & Frameworks → Android SDK, tab SDK Platforms, tick Android SDK Platform 36 và Apply. Đây là bản SDK mà mọi project trong khóa dùng để biên dịch (compileSdk = 36).

Còn một con số nữa cần biết: minSdk = 24, tức Android 7.0. Máy Android nào từ 7.0 trở lên đều cài được app bạn build. Máy cũ hơn thì không, và đó là lựa chọn có chủ đích - đổi lấy việc không phải viết code vá cho những bản Android gần như không còn ai dùng.

Phần 3: Plugin Kotlin Multiplatform

Bước này chỉ project KMP mới cần. Plugin này cho phép Android Studio chạy và debug phần iOS ngay trong IDE.

Settings → Plugins → Marketplace, gõ Kotlin Multiplatform, nhấn Install, rồi restart IDE.

Sau khi restart, bạn sẽ thấy thêm cấu hình chạy iosApp trong danh sách run configuration mỗi khi mở một project KMP. Plugin này cũng giúp IDE hiểu cú pháp Kotlin 2.4.10 mà khóa dùng.

Trên Windows và Linux: plugin vẫn cài được và vẫn hữu ích (nó hiểu cấu trúc source set của KMP), chỉ là mục iosApp sẽ không chạy được.

Phần 4: Chuẩn Bị Nơi Chạy App

Bạn cần ít nhất một nơi để app hiện ra.

Android: máy thật (khuyến nghị)

  1. Mở Settings → About phone, nhấn 7 lần vào Build number cho đến khi thấy "You are now a developer".
  2. Vào Settings → System → Developer options, bật USB debugging.
  3. Cắm cáp USB. Khi điện thoại hỏi "Allow USB debugging?", chọn Allow.

Android: emulator

  1. Trong Android Studio, mở Device Manager (icon điện thoại ở thanh bên phải).
  2. Create Virtual Device → chọn Pixel 8 hoặc bất kỳ Pixel nào.
  3. Chọn system image mới nhất có nhãn Recommended, tải về nếu chưa có.
  4. Finish, rồi nhấn nút Play để khởi động.

Lần khởi động đầu tiên chậm. Lần sau nhanh hơn nhiều.

iOS: chỉ trên macOS

  1. Cài Xcode từ Mac App Store. Nó nặng khoảng 15GB - 25GB.
  2. Mở Xcode một lần, chấp nhận license, để nó cài nốt các component phụ.
  3. Chạy lệnh này để trỏ command line tool vào đúng Xcode:
bash
sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
  1. Mở một simulator để chắc chắn nó chạy được:
bash
open -a Simulator

Phần 5: Kiểm Tra Bằng kdoctor (Windows, Linux không cần)

Đừng đoán xem máy đã sẵn sàng chưa. kdoctor trả lời chính xác câu đó.

Trên macOS:

bash
brew install kdoctor
kdoctor

kdoctor in ra một danh sách, mỗi dòng một thành phần:

js
[] Operating System
[] Java
[] Android Studio
[] Xcode
[] CocoaPods

Dấu hoặc ! kèm theo mô tả và lệnh cần chạy để sửa. Làm theo đúng thứ tự từ trên xuống, chạy lại kdoctor sau mỗi lần sửa cho đến khi sạch.

Trên Windows và Linux chưa có kdoctor. Bạn kiểm tra tay bằng hai lệnh:

bash
java -version   # cần 17 trở lên
adb devices     # cần liệt kê ít nhất một device

Kết quả adb devices mong đợi (thiết bị phải chạy Android 7.0 trở lên):

js
List of devices attached
RF8N30XXXXX	device

Nếu danh sách trống:

  • Máy thật: rút cáp cắm lại, kiểm tra đã Allow USB debugging chưa, thử cáp khác. Rất nhiều cáp chỉ sạc được chứ không truyền dữ liệu.
  • Emulator: kiểm tra emulator đã boot xong chưa (thấy màn hình home của Android).

Nếu adb báo không tìm thấy lệnh, thêm thư mục platform-tools của Android SDK vào biến môi trường PATH. Đường dẫn mặc định:

OSĐường dẫn
macOS~/Library/Android/sdk/platform-tools
Linux~/Android/Sdk/platform-tools
Windows%LOCALAPPDATA%\Android\Sdk\platform-tools

Tick hết checkpoint bên phải nghĩa là phần khó nhất của ngày đầu đã qua. Máy của bạn giờ có đủ JDK, Android Studio, SDK Platform 36 và một nơi để app hiện ra - đúng những gì cần để bắt đầu build.

Đăng nhập