sdkmanager

sdkmanager adalah alat command line yang memungkinkan Anda melihat, menginstal, mengupdate, dan meng-uninstal paket untuk Android SDK. Jika menggunakan Android Studio, Anda tidak perlu menggunakan alat ini, dan sebagai gantinya, Anda dapat mengelola paket SDK dari IDE.

Alat sdkmanager disediakan dalam paket Alat Command Line Android SDK. Agar dapat menggunakan SDK Manager untuk menginstal versi alat command line, ikuti langkah-langkah berikut:

  1. Download paket "command line tools only" terbaru dari halaman download Android Studio dan ekstrak paket tersebut.
  2. Pindahkan direktori cmdline-tools yang telah diekstrak ke direktori baru pilihan Anda, seperti android_sdk. Direktori baru ini adalah direktori Android SDK Anda.
  3. Dalam direktori cmdline-tools yang telah diekstrak, buat subdirektori yang disebut latest.
  4. Pindahkan konten direktori cmdline-tools asli, termasuk direktori lib, direktori bin, file NOTICE.txt, dan file source.properties, ke dalam direktori latest yang baru dibuat. Kini Anda dapat menggunakan alat command line dari lokasi ini.
  5. (Opsional) Untuk menginstal alat command line versi sebelumnya, jalankan perintah berikut:

    android_sdk/cmdline-tools/latest/bin/sdkmanager --install "cmdline-tools;version"
    
    Ganti version dengan versi yang ingin Anda instal, misalnya 5.0.

Penggunaan

Anda dapat menggunakan sdkmanager untuk mencantumkan paket yang diinstal dan tersedia, menginstal paket, dan mengupdate paket. Untuk detail selengkapnya, lihat bagian berikut.

Mencantumkan paket yang diinstal dan tersedia

Untuk mencantumkan paket yang diinstal dan tersedia, gunakan sintaksis berikut:

sdkmanager --list [options] \
           [--channel=channel_id] // Channels: 0 (stable), 1 (beta), 2 (dev), or 3 (canary)

Gunakan opsi channel untuk menyertakan paket dari saluran hingga dan mencakup channel_id. Misalnya, tentukan saluran canary untuk mencantumkan paket dari semua saluran.

Menginstal paket

Untuk menginstal paket, gunakan sintaksis berikut:

sdkmanager packages [options]

Argumen packages adalah jalur gaya SDK, seperti yang ditunjukkan dengan perintah --list, yang digabungkan dalam tanda kutip. Misalnya, "build-tools;34.0.0" atau "platforms;android-33".

Anda dapat meneruskan beberapa jalur paket, yang dipisahkan dengan spasi, tetapi setiap jalur harus diawali dan diakhiri dengan tanda petik. Misalnya, berikut ini cara menginstal alat platform terbaru dan alat SDK untuk API level 33:

sdkmanager "platform-tools" "platforms;android-33"

Atau, Anda dapat memasukkan file teks yang menentukan semua paket:

sdkmanager --package_file=package_file [options]

Argumen package_file adalah lokasi file teks yang setiap barisnya berupa jalur gaya SDK dari paket yang akan diinstal (tanpa tanda kutip).

Untuk meng-uninstal, tambahkan flag --uninstall:

sdkmanager --uninstall packages [options]
sdkmanager --uninstall --package_file=package_file [options]

Untuk menginstal CMake atau NDK, gunakan sintaksis berikut:

sdkmanager --install
           ["ndk;major.minor.build[suffix]" | "cmake;major.minor.micro.build"]
           [--channel=channel_id] // NDK channels: 0 (stable), 1 (beta), or 3 (canary)

Misalnya, gunakan perintah berikut untuk menginstal versi NDK yang ditentukan, terlepas dari saluran yang digunakan saat ini:

sdkmanager --install "ndk;21.3.6528147" --channel=3 // Install the NDK from the canary channel (or below)
sdkmanager --install "cmake;10.24988404" // Install a specific version of CMake

Mengupdate semua paket yang diinstal

Untuk mengupdate semua paket yang diinstal, gunakan sintaksis berikut:

sdkmanager --update [options]

Menerima lisensi

Anda harus menyetujui lisensi yang diperlukan untuk setiap paket yang telah diinstal. Langkah ini terjadi selama alur penginstalan saat Anda menginstal paket dari dalam Android Studio.

Jika Anda belum menginstal Android Studio, atau untuk server CI atau perangkat Linux headless lainnya tanpa menginstal GUI, lakukan hal berikut dari command line:

sdkmanager --licenses

Tindakan ini akan meminta Anda untuk menyetujui lisensi yang belum disetujui.

Opsi

Tabel berikut mencantumkan opsi yang tersedia untuk perintah yang tercantum di bagian sebelumnya:

Opsi Deskripsi
--sdk_root=path Menggunakan jalur SDK yang ditentukan sebagai ganti SDK yang berisi alat ini.
--channel=channel_id Menyertakan paket di saluran hingga dan mencakup channel_id. Saluran yang tersedia adalah:

0 (Stabil), 1 (Beta), 2 (Dev), dan 3 (Canary).

--include_obsolete Menyertakan paket yang sudah usang dalam daftar paket atau update paket. Hanya untuk digunakan dengan --list dan --update.
--no_https Memaksa semua koneksi agar menggunakan HTTP, bukan HTTPS.
--newer Dengan --list, hanya tampilkan paket baru atau yang dapat diupdate.
--verbose Mode output panjang. Pesan error, peringatan, dan informatif dicetak.
--proxy={http | socks} Menghubungkan melalui proxy dari jenis tertentu: http untuk protokol tingkat tinggi seperti HTTP atau FTP, atau socks untuk proxy SOCKS (V4 atau V5).
--proxy_host={IP_address | DNS_address} Alamat IP atau DNS dari proxy yang akan digunakan.
--proxy_port=port_number Nomor port proxy yang akan dihubungkan.