sdkmanager, Android SDK'nın paketlerini görüntülemenize, yüklemenize, güncellemenize ve kaldırmanıza olanak tanıyan bir komut satırı aracıdır. Android Studio kullanıyorsanız bu aracı kullanmanız gerekmez. Bunun yerine SDK paketlerinizi IDE'den yönetebilirsiniz.
sdkmanager aracı, Android SDK Command-Line Tools paketinde sağlanır.
Komut satırı araçlarının bir sürümünü yüklemek için SDK Yöneticisi'ni kullanmak üzere aşağıdaki adımları uygulayın:
- Android Studio sayfasından en son komut satırı araçları paketini indirip paketi çıkarın.
- Açılan
cmdline-toolsdizinini, seçtiğiniz yeni bir dizine (ör. android_sdk) taşıyın. Bu yeni dizin, Android SDK dizininizdir. - Açılan
cmdline-toolsdizinindelatestadlı bir alt dizin oluşturun. cmdline-toolsdizinindekilibdizini,bindizini,NOTICE.txtdosyası vesource.propertiesdosyası dahil olmak üzere tüm içerikleri yeni oluşturulanlatestdizinine taşıyın. Artık bu konumdaki komut satırı araçlarını kullanabilirsiniz.(İsteğe bağlı) Komut satırı araçlarının önceki bir sürümünü yüklemek için aşağıdaki komutu çalıştırın:
android_sdk/cmdline-tools/latest/bin/sdkmanager --install "cmdline-tools;version"
versionyerine yüklemek istediğiniz sürümü girin. Örneğin,5.0.
Kullanım
Yüklü ve kullanılabilir paketleri listelemek, paketleri yüklemek ve paketleri güncellemek için sdkmanager komutunu kullanabilirsiniz. Daha fazla bilgi için aşağıdaki bölümlere bakın.
Yüklü ve kullanılabilir paketleri listeleme
Yüklü ve kullanılabilir paketleri listelemek için aşağıdaki söz dizimini kullanın:
sdkmanager --list [options] \
[--channel=channel_id] // Channels: 0 (stable), 1 (beta), 2 (dev), or 3 (canary)
channel seçeneğini kullanarak channel_id dahil olmak üzere bir kanaldan paket ekleyin. Örneğin, tüm kanallardaki paketleri listelemek için kanarya kanalını belirtin.
Paketleri yükleme
Paketleri yüklemek için aşağıdaki söz dizimini kullanın:
sdkmanager packages [options]
packages bağımsız değişkeni, tırnak içine alınmış --list komutuyla gösterildiği gibi SDK tarzı bir yoldur. Örneğin, "build-tools;35.0.0" veya "platforms;android-36".
Birden fazla paket yolu iletebilirsiniz. Bu yollar boşlukla ayrılır ancak her biri kendi tırnak grubu içine alınmalıdır. Örneğin, en yeni platform araçlarını ve API düzeyi 36 için SDK araçlarını yükleme adımları aşağıda verilmiştir:
sdkmanager "platform-tools" "platforms;android-36"
Alternatif olarak, tüm paketleri belirten bir metin dosyası da iletebilirsiniz:
sdkmanager --package_file=package_file [options]
package_file bağımsız değişkeni, her satırın yüklenecek bir paketin SDK tarzı yolu olduğu (tırnak işareti olmadan) bir metin dosyasının konumudur.
Kaldırmak için --uninstall işaretini ekleyin:
sdkmanager --uninstall packages [options] sdkmanager --uninstall --package_file=package_file [options]
CMake veya NDK'yı yüklemek için aşağıdaki söz dizimini kullanın:
sdkmanager --install ["ndk;major.minor.build[suffix]" | "cmake;major.minor.micro.build"] [--channel=channel_id] // NDK channels: 0 (stable), 1 (beta), or 3 (canary)
Örneğin, belirtilen NDK sürümünü hangi kanalda olursa olsun yüklemek için aşağıdaki komutu kullanın:
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
Yüklü tüm paketleri güncelleme
Yüklü tüm paketleri güncellemek için aşağıdaki söz dizimini kullanın:
sdkmanager --update [options]
Lisansları kabul etme
Yüklediğiniz her paket için gerekli lisansı kabul etmeniz gerekir. Bu adım, Android Studio'dan paket yüklediğinizde yükleme akışı sırasında gerçekleşir.
Android Studio yüklü değilse veya bir CI sunucusu ya da GUI yüklü olmayan başka bir başsız Linux cihazı içinse komut satırından aşağıdakileri yapın:
sdkmanager --licenses
Bu işlem, henüz kabul edilmemiş lisansları kabul etmenizi ister.
Seçenekler
Aşağıdaki tabloda, önceki bölümde listelenen komutlar için kullanılabilen seçenekler yer almaktadır:
| Option | Açıklama |
|---|---|
--sdk_root=path
|
Bu aracı içeren SDK yerine belirtilen SDK yolunu kullanın. |
--channel=channel_id
|
channel_id dahil olmak üzere kanallara paketleri dahil edin. Kullanılabilir
kanallar:
|
--include_obsolete
|
Paket listesine veya paket güncellemelerine eski paketleri dahil etme.
Yalnızca --list ve --update ile kullanılabilir.
|
--no_https
|
Tüm bağlantıların HTTPS yerine HTTP kullanmasını zorunlu kılın. |
--newer
|
--list ile yalnızca yeni veya güncellenebilir paketleri gösterin.
|
--verbose
|
Ayrıntılı çıkış modu. Hatalar, uyarılar ve bilgilendirme mesajları yazdırılır. |
--proxy={http | socks}
|
Belirtilen türde bir proxy üzerinden bağlanın: HTTP veya FTP gibi üst düzey protokoller için http ya da SOCKS (V4 veya V5) proxy için socks.
|
--proxy_host={IP_address | DNS_address}
|
Kullanılacak proxy'nin IP veya DNS adresi. |
--proxy_port=port_number
|
Bağlanılacak proxy bağlantı noktası numarası. |